From c2795844e6a42cf207cbb7c72c2a898f78374a52 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Fri, 1 Jan 2021 09:17:13 +1030 Subject: [PATCH] ChangeLog rotation --- bfd/ChangeLog | 5007 +------------------------------- bfd/ChangeLog-2020 | 5017 ++++++++++++++++++++++++++++++++ binutils/ChangeLog | 2070 +------------ binutils/ChangeLog-2020 | 2080 +++++++++++++ elfcpp/ChangeLog | 86 +- elfcpp/ChangeLog-2020 | 96 + gas/ChangeLog | 6109 +------------------------------------- gas/ChangeLog-2020 | 6119 +++++++++++++++++++++++++++++++++++++++ gold/ChangeLog | 570 +--- gold/ChangeLog-2020 | 580 ++++ gprof/ChangeLog | 76 +- gprof/ChangeLog-2020 | 86 + include/ChangeLog | 1010 +------ include/ChangeLog-2020 | 1020 +++++++ ld/ChangeLog | 4546 +---------------------------- ld/ChangeLog-2020 | 4556 +++++++++++++++++++++++++++++ libctf/ChangeLog | 1954 +------------ libctf/ChangeLog-2020 | 1954 +++++++++++++ opcodes/ChangeLog | 3271 +-------------------- opcodes/ChangeLog-2020 | 3281 +++++++++++++++++++++ 20 files changed, 24814 insertions(+), 24674 deletions(-) create mode 100644 bfd/ChangeLog-2020 create mode 100644 binutils/ChangeLog-2020 create mode 100644 elfcpp/ChangeLog-2020 create mode 100644 gas/ChangeLog-2020 create mode 100644 gold/ChangeLog-2020 create mode 100644 gprof/ChangeLog-2020 create mode 100644 include/ChangeLog-2020 create mode 100644 ld/ChangeLog-2020 create mode 100644 libctf/ChangeLog-2020 create mode 100644 opcodes/ChangeLog-2020 diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 0cb006d6944..cf5fd0bb4c2 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5009 +1,6 @@ -2020-12-23 H.J. Lu - - * elf-linker-x86.h (elf_x86_cet_report): Renamed to ... - (elf_x86_prop_report): This. - (elf_linker_x86_params): Add lam_u48, lam_u57, lam_u48_report - and lam_u57_report. - * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Support - GNU_PROPERTY_X86_FEATURE_1_LAM_U48 and - GNU_PROPERTY_X86_FEATURE_1_LAM_U57. - (_bfd_x86_elf_link_fixup_gnu_properties): Keep LAM features only - for 64-bit output. - -2020-12-18 H.J. Lu - - PR ld/27091 - * elflink.c (elf_link_input_bfd): Copy elf_gnu_osabi_retain - from input only for relocatable link. - -2020-12-18 Alan Modra - - * elf32-microblaze.c (dbg): Delete unused variable. - * elf32-nds32.c (relax_group_section_id_list): Make static. - * som.c (reloc_queue): Make static. - * xtensa-isa.c (xtisa_errno, xtisa_error_msg): Make static. - -2020-12-18 Alan Modra - - * archive.c (_bfd_ar_spacepad, _bfd_ar_sizepad): Use auto buf. - * coff-mcore.c (coff_mcore_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_unhandled_reloc): Use asprintf in place - of fixed size and possibly too small buf for translated message. - * elf64-ppc.c (ppc64_elf_unhandled_reloc): Likewise. - * elf32-v850.c (v850_elf_check_relocs): Likewise. - * ecoff.c (ecoff_type_to_string): Pass in return string buff rather - than using static buffer2. Delete dead code. Remove unnecessary - parentheses. - (_bfd_ecoff_print_symbol): Pass auto buff to ecoff_type_to_string. - * elf32-rx.c (describe_flags): Pass in return string buf rather - than using static buf. - (rx_elf_merge_private_bfd_data): Pass buf to describe_flags. - (rx_elf_print_private_bfd_data): Likewise. - * mach-o.c (cpusubtype): Pass in return string buffer rather than - using static buffer. - (bfd_mach_o_bfd_print_private_bfd_data): Pass buff to cpusubtype. - * opncls.c (separate_debug_file_exists): Make buffer an auto var. - (bfd_fill_in_gnu_debuglink_section): Likewise. - * peXXigen.c (rsrc_resource_name): Pass in return string buffer - rather than using static buffer. - (rsrc_sort_entries): Pass buff to rsrc_resource_name. - * vms-alpha.c (_bfd_vms_write_emh): Pass tbuf to get_vms_time_string. - * vms-misc.c (get_vms_time_string): Pass in return string tbuf - rather than using static tbuf. - * vms.h (get_vms_time_string): Update prototype. - -2020-12-18 Alan Modra - - * coff-z80.c (bfd_howto_type): Make typedef const. - * elf32-z80.c (bfd_howto_type): Likewise. - * elf32-m32c.c (EncodingTable): Likewise. - * elf32-csky.c (csky_arch_for_merge): Likewise. - (csky_archs): Use typedef. - * elf32-m68hc11.c (m68hc11_direct_relax_table): Make const. - (find_relaxable_insn, m68hc11_elf_relax_section): Adjust to suit. - * elf32-ppc.c (ppc_alt_plt): Make const. - * elf32-rl78.c (relax_addr16): Likewise. - * targets.c (_bfd_associated_vector): Likewise. - (bfd_target_vector, bfd_associated_vector): Likewise. - * libbfd-in.h (bfd_target_vector, bfd_associated_vector): Likewise. - * libbfd.h: Regenerate. - -2020-12-18 Alan Modra - - * ecoff.c (bfd_debug_section): Init using BFD_FAKE_SECTION. - (ecoff_scom_section, ecoff_scom_symbol): Statically init using - BFD_FAKE_SECTION and GLOBAL_SYM_INIT. Delete initialisation code. - * elf32-m32r.c (m32r_elf_scom_section, m32r_elf_scom_symbol), - * elf32-score.c (score_elf_scom_section, score_elf_scom_symbol), - * elf32-score7.c (score_elf_scom_section, score_elf_scom_symbol), - * elf32-tic6x.c (tic6x_elf_scom_section, tic6x_elf_scom_symbol), - * elf32-v850.c (v850_elf_scom_section, v850_elf_scom_symbol), - (v850_elf_tcom_section, v850_elf_tcom_symbol), - (v850_elf_zcom_section, v850_elf_zcom_symbol), - * elf64-mmix.c (mmix_elf_reg_section, mmix_elf_reg_section_symbol), - * elfxx-mips.c (mips_elf_scom_section, mips_elf_scom_symbol): Likewise. - -2020-12-16 Alan Modra - - * elfxx-target.h (elfNN_bed): Constify. - * bfd.c (bfd_elf_set_pagesize): Delete. - (bfd_emul_set_maxpagesize, bfd_emul_set_commonpagesize): Delete. - * elf.c (get_program_header_size): Get commonpagesize from - link info. - (_bfd_elf_map_sections_to_segments): Get maxpagesize from link info. - (assign_file_positions_for_load_sections): Likewise. - (assign_file_positions_for_non_load_sections): Likewise. - (rewrite_elf_program_header): Add maxpagesize param. Set map_p_align. - (copy_private_bfd_data): Don't call bfd_elf_set_maxpagesize. - Instead pass maxpagesize to rewrite_elf_program_header. - * elf32-nds32.c (relax_range_measurement): Add link_info param. - Get maxpagesize from link_info. Adjust caller. - * bfd-in2.h: Regenerate. - -2020-12-16 Alan Modra - - * elflink.c (elf_flags_to_names): Constify. - -2020-12-16 Alan Modra - - * libxcoff.h (struct xcoff_backend_data_rec): Constify - _xcoff_glink_code. - (XCOFF_RELOC_FUNCTION_ARGS, XCOFF_COMPLAIN_FUNCTION_ARGS): Delete. - (xcoff_reloc_function, xcoff_complain_function): New typedef. - (xcoff_calculate_relocation, xcoff_complain_overflow), - (xcoff_reloc_type_noop, xcoff_reloc_type_fail), - (xcoff_reloc_type_pos, xcoff_reloc_type_neg), - (xcoff_reloc_type_rel, xcoff_reloc_type_toc), - (xcoff_reloc_type_ba, xcoff_reloc_type_crel): Update declaration. - * coff-rs6000.c (xcoff_reloc_type_br): Declare using typedef. - (xcoff_complain_overflow_dont_func): Likewise. - (xcoff_complain_overflow_bitfield_func): Likewise. - (xcoff_complain_overflow_signed_func): Likewise. - (xcoff_complain_overflow_unsigned_func): Likewise. - (xcoff_calculate_relocation, xcoff_complain_overflow): Constify. - (xcoff_glink_code): Constify. - * coff64-rs6000.c (xcoff64_reloc_type_br): Declare using typedef. - (xcoff64_calculate_relocation, xcoff64_glink_code): Constify. - -2020-12-16 Alan Modra - - * elf32-xtensa.c (narrowable, widenable): Constify. - * xtensa-modules.c: Constify many arrays. - -2020-12-16 Alan Modra - - * elf64-ppc.c (synthetic_opd): Constify. - -2020-12-16 Alan Modra - - * arc-plt.h (plt_versions): Constify. - * elf32-arc.c (arc_get_plt_version): Constify return pointer, - adjust uses throughout. - -2020-12-16 Alan Modra - - * coffcode.h (pelength, peheader): Delete static variables. - (coff_apply_checksum): Instead, define them as auto vars, and pass.. - (coff_read_word, coff_compute_checksum): ..to here. Delete - unnecessary forward declarations. - * pei-x86_64.c (pdata_count): Delete static variable. - (struct pex64_paps): New. - (pex64_print_all_pdata_sections, pex64_bfd_print_pdata): Pass - a pex64_paps for counting. - * peicode.h (jtab): Constify. - -2020-12-15 Vivek Das Mohapatra - - * elflink.c (bfd_elf_size_dynamic_sections): Call - _bfd_elf_add_dynamic_entry to add a DT_GNU_FLAGS_1 section. - -2020-12-14 Alan Modra - - * elf-bfd.h (struct elf_obj_tdata): Add being_created. - * elf.c (bfd_section_from_shdr): Delete static vars for loop - detection. Use new tdata variable instead. - * elfcode.h (elf_object_p): Allocate being_created. - -2020-12-10 Nelson Chu - - * elfxx-riscv.c (riscv_ext_dont_care_version): New function. Return - TRUE if we don't care the versions of the extensions. These extensions - are added to the subset list for special purposes, with the explicit - versions or the RISCV_UNKNOWN_VERSION versions. - (riscv_parse_add_subset): If we do care the versions of the extension, - and the versions are unknown, then report errors for the non-implicit - extensions, and return directly for the implicit one. - (riscv_arch_str1): Do not output i extension after e, and the extensions - which versions are unknown. - -2020-12-07 Siddhesh Poyarekar - - PR 26945 - * opncls.c (bfd_fdopenw): New function. - * bfd-in2.h: Regenerate. - -2020-12-07 Alan Modra - - * elf32-csky.c (csky_relocate_contents): Correct negate test. - * cpu-ns32k.c (_bfd_do_ns32k_reloc_contents): Likewise. - * elf32-nds32.c (nds32_relocate_contents): Likewise. - -2020-12-05 Maciej W. Rozycki - - * elf32-vax.c (elf_vax_check_relocs) : Use - SYMBOL_REFERENCES_LOCAL rather than `h->forced_local' to check - whether the symbol referred is local or not. - -2020-12-04 H.J. Lu - - PR ld/27016 - * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Convert load - to mov only for GOTPCRELX relocations. - -2020-12-04 Alan Modra - - PR 26978 - * elflink.c (_bfd_elf_add_default_symbol): Handle the case where - a new weak sym@@ver should be overridden by an existing sym@ver. - (elf_link_add_object_symbols): Don't _bfd_elf_add_default_symbol - for a new weak sym@ver when sym@@ver already exists. - * linker.c (link_action): Choose MIND for previous indirect, - current def, rather than MDEF. - (_bfd_generic_link_add_one_symbol ): Handle redefinition of - weak indirect symbol. - -2020-12-01 Nelson Chu - - * elfxx-riscv.c (riscv_parse_prefixed_ext): Use riscv_compare_subsets - to check the Z* extensions' order. - -2020-12-01 Nelson Chu - - * elfxx-riscv.c (riscv_parse_add_subset): Allow to add g with - RISCV_UNKNOWN_VERSION versions. - (riscv_parse_std_ext): Add g to the subset list, we only use it - to add the implicit extensions, but won't output it to arch string. - (riscv_parse_add_implicit_subsets): Add implicit zicsr and zifencei - for g extension. - (riscv_arch_str1): Do not output g to the arch string. - * elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Moved to include/opcode/riscv.h. - -2020-12-01 Nelson Chu - - * elfnn-riscv.c (riscv_merge_std_ext): Updated since - riscv_lookup_subset is changed. - * elfxx-riscv.c (riscv_ext_order): New Array used to compare the - extensions' order quickly. - (riscv_init_ext_order): New function. Init the riscv_ext_order - according to the riscv_supported_std_ext and parse_config[i].class - automatically. - (riscv_compare_subsets): New function. Similar to the strcmp, but - compare the subsets with the specific order. - (riscv_lookup_subset): Return TRUE and set `current` to the subset - if it is found. Otherwise, return FALSE and set `current` to the - place where we should insert the subset. - (riscv_add_implicit_subset): New function. Search the list first, - and then find the right place to add the implicit_subset. - (riscv_parse_add_subset): Since We have to add all arch string - extensions first, and then start to add their implicit extensions. - We can add arch string extensions in order by the original - riscv_add_subset, and then add the implicit subsets by the - riscv_add_implicit_subset. Besides, do not add the implicit - extensions if we failed to find their default versions. - (riscv_parse_std_ext): Updated. - (riscv_parse_add_implicit_subsets): New function. Add all implicit - extensions according to the arch string extensions. - (riscv_parse_subset): Call riscv_init_ext_order and - riscv_parse_add_implicit_subsets, before and after parsing the - arch string. Remove parts of the ISA conflict checking since - the implicit extensions are added. - * elfxx-riscv.h (riscv_lookup_subset): Updated. - -2020-12-01 Nelson Chu - - * elfxx-riscv.c (riscv_lookup_subset): Moved to front. - (riscv_add_subset): Likewise. - (riscv_release_subset_list): Likewise. - (riscv_parse_add_subset): New function. Find and check the - versions before adding them by riscv_add_subset. - (riscv_parsing_subset_version): Remove use_default_version - and change the version type from unsigned to int. Set the - versions to RISCV_UNKNOWN_VERSION if we can not find them - in the arch string. - (riscv_parse_std_ext): Updated. - (riscv_parse_prefixed_ext): Updated. Since we use as_bad - rather than as_fatal to report more errors, return NULL - string if the parsed end_of_version is NULL, too. - (riscv_parse_subset): Use a new boolean, no_conflict, to - report more errors when we have more than one ISA conflicts. - * elfxx-riscv.h (RISCV_DONT_CARE_VERSION): Changed to - RISCV_UNKNOWN_VERSION. - (riscv_lookup_subset_version): Removed. - (riscv_parse_subset_t): Updated. - -2020-12-01 Nelson Chu - - * elfxx-riscv.c (riscv_parse_std_ext): Stop parsing standard - extensions when parsed h keyword. - (riscv_get_prefix_class): Support prefixed h class. - (riscv_std_h_ext_strtab): Likewise. - (riscv_ext_h_valid_p): Likewise. - (parse_config): Likewise. - (riscv_std_z_ext_strtab): Add zifencei. - * elfxx-riscv.h (riscv_isa_ext_class): Add RV_ISA_CLASS_H. - -2020-12-01 Nelson Chu - - * elfxx-riscv.c (riscv_parse_subset): ISA string cannot contain - any uppercase letter. - -2020-12-01 Nelson Chu - - * elfxx-riscv.c: Re-indent codes, unify and improve the error - messages and comments. - (riscv_parse_prefixed_ext): Stop parsing the prefixed class - extensions if the class is RV_ISA_CLASS_UNKNOWN, I get internal - errors before adding this check for march-fail-porder* testcases. - (riscv_parse_subset): Move the rv32 with q checking in front. - * elfxx-riscv.h: Likewise. - -2020-12-01 Alan Modra - - PR 26979 - * elf-bfd.h (elf_backend_merge_symbol_attribute): Update prototype. - * elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Likewise. - * elfxx-mips.h (_bfd_mips_elf_merge_symbol_attribute): Likewise. - * elfxx-x86.h (_bfd_x86_elf_merge_symbol_attribute): Likewise. - * elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): Replace - isym parameter with st_other. Adjust code. - * elf64-alpha.c (elf64_alpha_merge_symbol_attribute): Likewise. - * elf64-ppc.c (ppc64_elf_merge_symbol_attribute): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_merge_symbol_attribute): Likewise. - * elfxx-mips.c (_bfd_mips_elf_merge_symbol_attribute): Likewise. - * elfxx-x86.c (_bfd_x86_elf_merge_symbol_attribute): Likewise. - * elflink.c (elf_merge_st_other): Likewise. - (_bfd_elf_merge_symbol, elf_link_add_object_symbols): Adjust to suit. - (_bfd_elf_copy_link_hash_symbol_type): Likewise. - (_bfd_elf_add_default_symbol): Merge st_other from undecorated - symbol and @VER symbol to @@VER symbol. - -2020-11-28 Alan Modra - - PR 26907 - * elf.c (elf_sort_sections): Don't sort zero size !load sections - after load sections. - -2020-11-27 Jozef Lawrynowicz - - * elf.c (special_sections_g): Add .gnu.linkonce.n and .gnu.linkonce.p. - (special_sections_n): Add .noinit. - (special_sections_p): Add .persistent. - -2020-11-26 Nick Clifton - - PR 26946 - * dwarf2.c (read_section): Check for debug sections with excessive - sizes. - -2020-11-25 H.J. Lu - - PR ld/26936 - * elflink.c (_bfd_elf_check_kept_section): Get the real kept - section. - -2020-11-23 Nick Clifton - - PR 26931 - * elf-bfd.h (struct elf_backend_data): Add bfd_boolean field to - slurp_secondary_relocs field. - (_bfd_elf_slurp_secondary_reloc_section): Update prototype. - * elf.c (_bfd_elf_slurp_secondary_reloc_section): Add new - parameter. Compute number of symbols based upon the new - parameter. - * elfcode.h (elf_slurp_reloc_table): Pass dynamic as new - parameter. - -2020-11-23 H.J. Lu - - PR ld/26918 - * elf64-s390.c (elf_s390_finish_dynamic_sections): Set .got - sh_entsize only if .got size > 0. - -2020-11-21 Nelson Chu - - * elfnn-riscv.c (_bfd_riscv_relax_section): Add a new relax pass - to do the pcgp relaxation later, after the lui and call relaxations, - but before the delete and alignment relaxations. - -2020-11-20 Nick Alcock - - * elflink.c (elf_finalize_dynstr): Call examine_strtab after - dynstr finalization. - (elf_link_swap_symbols_out): Don't call it here. Call - ctf_new_symbol before swap_symbol_out. - (elf_link_output_extsym): Call ctf_new_dynsym before - swap_symbol_out. - (bfd_elf_final_link): Likewise. - * elf.c (swap_out_syms): Pass in bfd_link_info. Call - ctf_new_symbol before swap_symbol_out. - (_bfd_elf_compute_section_file_positions): Adjust. - -2020-11-19 Nick Clifton - - PR 26918 - * elf64-s390.c (elf_s390_finish_dynamic_sections): Check for the - existance of an sgot output section before setting the - sh_entsize. - -2020-11-18 Jozef Lawrynowicz - H.J. Lu - - * elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_retain. - (struct elf_obj_tdata): Increase has_gnu_osabi to 4 bits. - * elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_retain - for SHF_GNU_RETAIN. - (_bfd_elf_final_write_processing): Report if SHF_GNU_RETAIN is - not supported by the OSABI. - Adjust error messages. - * elflink.c (elf_link_input_bfd): Copy enabled has_gnu_osabi bits from - input BFD to output BFD. - (bfd_elf_gc_sections): gc_mark the section if SHF_GNU_RETAIN is set. - -2020-11-16 Przemyslaw Wirkus - - * cpu-arm.c (processors): Add Cortex-A78C. - -2020-11-11 Tom Tromey - - * archive.c (getuid, getgid): Move... - * sysdep.h (getuid, getgid): ...here. - -2020-11-09 Alan Modra - - * vms-alpha.c (alpha_vms_write_exec): Write 16 bits to eihd.alias. - -2020-11-09 Alan Modra - - * archive.c (bfd_ar_hdr_from_filesystem): Use bfd_set_input_error - when stat of archive member fails. - * coff-rs6000.c (xcoff_write_archive_contents_old), - (xcoff_write_archive_contents_big): Likewise, and handle in-memory - bfd. - -2020-11-03 Alan Modra - - * elf.c (bfd_section_from_shdr): Free sections_being_created. - Use bfd_zmalloc. - -2020-11-02 Alan Modra - - PR 15146 - PR 26314 - PR 26530 - PR 26806 - * elflink.c (elf_link_add_object_symbols): Don't set def/ref flags - for plugin syms. Do allow plugin syms to mark as-needed libs. - -2020-10-30 H.J. Lu - - PR gas/26703 - * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Generate - GNU_PROPERTY_X86_ISA_1_BASELINE for -z x86-64-baseline. - -2020-10-29 Nick Clifton - - PR 26809 - * elf.c (_bfd_elf_slurp_secondary_reloc_section): Use the correct - sized reloc reading function. - (_bfd_elf_write_secondary_reloc_section): Use the correct sized - reloc writing function. - -2020-10-28 Nick Clifton - - PR 26774 - * srec.c (srec_write_symbols): Do not emit symbols in sections - that have been removed from the output. - -2020-10-27 Nick Clifton - - * elf64-hppa.c (elf_hppa_final_link_relocate): Check that the - symbol's section is being output before adding its offset to the - addend when processing R_PARISC_SECREL32. - -2020-10-25 Alan Modra - - * vms-misc.c (_bfd_vms_save_counted_string): Count length byte - towards maxlen. - -2020-10-20 Dr. David Alan Gilbert - - * po/es.po: Fix printf format. - -2020-10-16 Nelson Chu - - * elfnn-riscv.c (riscv_elf_link_hash_table): Add last_iplt_index. - (riscv_elf_size_dynamic_sections): Initialize the last_iplt_index. - (riscv_elf_relocate_section): Use riscv_elf_append_rela. - (riscv_elf_finish_dynamic_symbol): If the use_elf_append_rela is - false, then we should add the dynamic relocs from the last of - the .rela.iplt, and don't use the riscv_elf_append_rela to add. - -2020-10-16 Nelson Chu - - * elfnn-riscv.c: Include "objalloc.h" since we need objalloc_alloc. - (riscv_elf_link_hash_table): Add loc_hash_table and loc_hash_memory - for local STT_GNU_IFUNC symbols. - (riscv_elf_got_plt_val): Removed. - (riscv_elf_local_htab_hash, riscv_elf_local_htab_eq): New functions. - Use to compare local hash entries. - (riscv_elf_get_local_sym_hash): New function. Find a hash entry for - local symbol, and create a new one if needed. - (riscv_elf_link_hash_table_free): New function. Destroy an riscv - elf linker hash table. - (riscv_elf_link_hash_table_create): Create hash table for local ifunc. - (riscv_elf_check_relocs): Create a fake global symbol to track the - local ifunc symbol. Add support to check and handle the relocations - reference to ifunc symbols. - (allocate_dynrelocs): Let allocate_ifunc_dynrelocs and - allocate_local_ifunc_dynrelocs to handle the ifunc symbols if they - are defined and referenced in a non-shared object. - (allocate_ifunc_dynrelocs): New function. Allocate space in .plt, - .got and associated reloc sections for ifunc dynamic relocs. - (allocate_local_ifunc_dynrelocs): Likewise, but for local ifunc - dynamic relocs. - (riscv_elf_relocate_section): Add support to handle the relocation - referenced to ifunc symbols. - (riscv_elf_size_dynamic_sections): Updated. - (riscv_elf_adjust_dynamic_symbol): Updated. - (riscv_elf_finish_dynamic_symbol): Finish up the ifunc handling, - including fill the PLT and GOT entries for ifunc symbols. - (riscv_elf_finish_local_dynamic_symbol): New function. Called by - riscv_elf_finish_dynamic_symbol to handle the local ifunc symbols. - (_bfd_riscv_relax_section): Don't do the relaxation for ifunc. - * elfxx-riscv.c: Add R_RISCV_IRELATIVE. - * configure.ac: Link elf-ifunc.lo to use the generic ifunc support. - * configure: Regenerated. - -2020-10-16 Alan Modra - - * elf32-arc.c (replace_func): Correct return type. - (get_replace_function): Use a replace_func function pointer rather - than void*. Update associated ARC_RELOC_HOWTO define. - -2020-10-16 Alan Modra - - * elf32-cr16.c: Formatting. - (cr16_elf_final_link_relocate): Sign extend rather than clumsy - "add or subtract" of offset value. Simplify range checks. Move - common code out of "if" branches. Don't refetch insn fields - needlessly. - -2020-10-16 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Tighten sanity check - on R_PPC64_GOT_LO_DS and R_PPC64_GOT_HA instructions. - -2020-10-09 Alan Modra - - * elf64-ppc.c (write_plt_relocs_for_local_syms): Don't do local - entry offset optimisation. - -2020-10-09 H.J. Lu - - PR gas/26703 - * elf-linker-x86.h (elf_linker_x86_params): Add isa_level. - * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Merge - GNU_PROPERTY_X86_ISA_1_V[234]. - (_bfd_x86_elf_link_setup_gnu_properties): Generate - GNU_PROPERTY_X86_ISA_1_V[234] for -z x86-64-v[234]. - -2020-10-06 H.J. Lu - - PR ld/26711 - * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Merge -z ibt - and -z shstk only with GNU_PROPERTY_X86_FEATURE_1_AND. - -2020-10-06 Brandon Bergren - - * config.bfd: Add powerpc64le-*-freebsd*. - * configure.ac: Add powerpc_elf64_fbsd_le_vec. - * elf64-ppc.c (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Define for - freebsd. - * targets.c (powerpc_elf64_fbsd_le_vec): Declare. - (_bfd_target_vector): Add it. - * configure: Regenerate. - -2020-10-05 Kamil Rytarowski - - * config.bfd (aarch64-*-netbsd*, aarch64_be-*-netbsd*): Add target. - -2020-10-05 Nick Clifton - - PR 26253 - * elf.c (_bfd_elf_setup_sections): Do not complain about an - sh_link value of zero when the SLF_LINK_ORDER flag is set. - (assign_section_numbers): Likewise. - -2020-10-02 H.J. Lu - - PR 26681 - * elflink.c (bfd_elf_gc_sections): Do not arbitrarily keep note - sections which are linked to another section. - -2020-09-30 Przemyslaw Wirkus - - * cpu-arm.c: Add cortex-a78 and cortex-a78ae. - -2020-09-28 Przemyslaw Wirkus - - * cpu-arm.c: (processors) Add Cortex-X1. - -2020-09-28 Alan Modra - - PR 26656 - * elf64-ppc.c (ppc_build_one_stub, ppc_size_one_stub): Check for - NULL stub_entry->h before calling is_tls_get_addr. - -2020-09-26 Alan Modra - - * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Depend on has_plt_localentry0. - (LD_R0_0R11, ADD_R11_R0_R11): Define. - (ppc64_elf_tls_setup): Disable params->plt_localentry0 when power10 - code detected. - (ppc64_elf_size_stubs): Update __glink_PLTresolve eh_frame. - (ppc64_elf_build_stubs): Move r2 save to start of __glink_PLTresolve, - and only emit for has_plt_localentry0. Don't use r2 in the stub. - -2020-09-24 Alan Modra - - PR 26656 - * elf64-ppc.c (plt_stub_size): Add "odd" param. Use it with - size_power10_offset rather than calculating from start of stub. - Add size for notoc tls_get_addr_opt stub. - (plt_stub_pad): Add "odd" param, pass to plt_stub_size. - (build_tls_get_addr_head, build_tls_get_addr_tail): New functions. - (build_tls_get_addr_stub): Delete. - (ppc_build_one_stub): Use a temp for htab->params->stub_bfd. - Emit notoc tls_get_addr_opt stub. Move eh_frame code to - suit. Adjust code to use bfd_tls_get_addr_head/tail in place - of build_tls_get_addr_stub. - (ppc_size_one_stub): Size notoc tls_get_addr_opt stub. - Adjust plt_stub_size and plt_stub_pad calls. Correct "odd" - when padding stub. Size eh_frame for notoc stub too. - Correct lr_restore value. - (ppc64_elf_relocate_section): Don't skip over first insn of - notoc tls_get_addr_opt stub. - -2020-09-24 Alan Modra - - PR 26655 - * elf64-ppc.c (ppc64_elf_func_desc_adjust): Rename to.. - (ppc64_elf_edit): Call params->edit. - (ppc64_elf_tls_setup): Don't call _bfd_elf_tls_setup. Return a - bfd_boolean. - * elf64-ppc.h (struct ppc64_elf_params): Add "edit". - (ppc64_elf_tls_setup): Update declaration. - -2020-09-21 Alan Modra - - PR 26569 - * elfxx-riscv.c (howto_table): Correct size and bitsize of - R_RISCV_RVC_BRANCH, R_RISCV_RVC_JUMP, and R_RISCV_RVC_LUI. - Correct size for R_RISCV_TLS_DTPMOD32, R_RISCV_TLS_DTPREL32, - R_RISCV_CALL, and R_RISCV_CALL_PLT. Make R_RISCV_TPREL_ADD and - R_RISCV_ALIGN like R_RISCV_NONE. Correct dst_mask many relocs. - -2020-09-17 Mikael Pettersson - - PR ld/18808 - * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Skip IFUNC - relocations in debug sections, change abort to _bfd_error_handler. - -2020-09-16 H.J. Lu - - PR ld/26583 - * config.bfd (targ64_selvecs, targ_selvecs): Add x86_64_pe_vec - to x86_64_pei_vec. - * reloc.c: Include "coff/internal.h". - (bfd_perform_relocation): Adjust relocation for PE/x86-64 inputs. - -2020-09-16 Alan Modra - - * elf-bfd.h (elf_symbol_from): Remove unused ABFD parameter. - * elf.c (ignore_section_sym, _bfd_elf_copy_private_symbol_data), - (swap_out_syms): Adjust elf_symbol_from invocation. - -2020-09-16 Alan Modra - - PR 26623 - * elf-bfd.h (elf_symbol_from): Exclude synthetic symbols. - -2020-09-15 H.J. Lu - - * coff-x86_64.c (howto_table): Display PE relocation names. - -2020-09-15 Hans-Peter Nilsson - - PR ld/26589 - * elf32-cris.c (cris_elf_check_relocs): Add missing NULL check - on argument before calling UNDEFWEAK_NO_DYNAMIC_RELOC. - -2020-09-12 H.J. Lu - - PR ld/26391 - * elflink.c (elf_final_link_info): Add local_hash_table. - (local_hash_entry): New. - (local_hash_newfunc): Likewise. - (elf_link_output_symstrtab): Append ".COUNT" to duplicated local - symbols. - (bfd_elf_final_link): Initialize and free local_hash_table for - "-z unique-symbol". - -2020-09-10 Siddhesh Poyarekar - - * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Revert - changes in 7e05773767820b441b23a16628b55c98cb1aef46. Set - error for undefined symbol in BFD_RELOC_AARCH64_BRANCH19 and - BFD_RELOC_AARCH64_TSTBR14 relocations. - -2020-09-09 Nick Clifton - - * cofflink.c (coff_link_check_archive_element): Move the check for - coff type input to the start of the function. - -2020-09-09 Alan Modra - - * libbfd-in.h (_bfd_write_unsigned_leb128): Declare. - * libbfd.h: Regenerate. - -2020-09-08 Jozef Lawrynowicz - Kuan-Lin Chen - - * bfd-in2.h (bfd_reloc_code_real): Add - BFD_RELOC_MSP430_{SET,SUB}_ULEB128. - * elf32-msp430.c (msp430_elf_ignore_reloc): New. - (elf_msp430_howto_table): Add R_MSP430{,X}_GNU_{SET,SUB}_ULEB128. - (msp430_reloc_map): Add R_MSP430_GNU_{SET,SUB}_ULEB128. - (msp430x_reloc_map): Add R_MSP430X_GNU_{SET,SUB}_ULEB128. - (write_uleb128): New. - (msp430_final_link_relocate): Handle R_MSP430{,X}_GNU_{SET,SUB}_ULEB128. - * libbfd.c (_bfd_write_unsigned_leb128): New. - * libbfd.h (_bfd_write_unsigned_leb128): New prototype. - Add BFD_RELOC_MSP430_{SET,SUB}_ULEB128. - * reloc.c: Document BFD_RELOC_MSP430_{SET,SUB}_ULEB128. - -2020-09-08 Alex Coplan - - * archures.c (bfd_mach_aarch64_8R): New. - * bfd-in2.h: Regenerate. - * cpu-aarch64.c (bfd_aarch64_arch_v8_r): New. - (bfd_aarch64_arch_ilp32): Update tail pointer. - -2020-09-08 Alan Modra - - PR 13250 - PR 26580 - * elflink.c (_bfd_elf_merge_symbol): Make "override" a bfd**. - Return oldbfd in override when old common should override new - common. - (_bfd_elf_add_default_symbol): Adjust to suit. - (elf_link_add_object_symbols): Likewise. Pass "override" to - _bfd_generic_link_add_one_symbol. Save and restore common u.c.p - field for --as-needed shared libraries. Revert pr13250 changes. - -2020-09-08 Nick Clifton - - * plugin.c (bfd_plugin_canonicalize_symtab): Handle the case of an - unrecognized symbol type in a weak definition. - -2020-09-04 Alan Modra - - PR 26574 - * elfcode.h (elf_object_p): Sanity check section header offset. - * elf.c (_bfd_elf_slurp_secondary_reloc_section): Sanity check - sh_entsize. - -2020-09-04 Alan Modra - - PR 15146 - PR 26314 - PR 26530 - * elflink.c (elf_link_add_object_symbols): Do set def_regular - and ref_regular for IR symbols. Don't clear dynsym, allowing - IR symbols to load --as-needed shared libraries, but prevent - IR symbols from becoming dynamic. - -2020-09-03 Nick Clifton - - PR 26521 - * elf.c (_bfd_elf_write_secondary_reloc_section): Check for - secondary reloc sections with a zero sh_entsize field. - -2020-09-03 Nelson Chu - - * elfnn-riscv.c (riscv_i_or_e_p): Minor cleanup for warnings/errors. - (riscv_merge_std_ext): Likewise. - (riscv_merge_arch_attr_info): Likewise. - (riscv_merge_attributes): Likewise and fix comment typos. - -2020-09-03 Nelson Chu - - * elfnn-riscv.c (riscv_version_mismatch): Change the return type - from void to bfd_boolean. Report warnings rather than errors - when the ISA versions are mis-matched. Afterwards, remember to - update the output ISA versions to the newest ones. - (riscv_merge_std_ext): Allow to link objects with different - standard ISA versions. Try to add output ISA versions to - merged_subsets first. - (riscv_merge_multi_letter_ext): Likewise. But for standard additional - ISA and non-standard ISA versions. - -2020-09-03 Kito Cheng - - * elfnn-riscv.c (riscv_merge_std_ext): Fix to report the correct - error message when the versions of extension are mis-matched. - * elfxx-riscv.c (riscv_parse_subset): Don't issue the error when - the string is empty. - -2020-09-03 Alan Modra - - * xcofflink.c (xcoff_get_archive_info): Allocate xcoff_archive_info - on the output bfd objalloc memory. - -2020-09-02 Alan Modra - - * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Correct type - of constant shifted left. - -2020-09-02 Alan Modra - - * elf32-pru.c (pru_elf32_do_ldi32_relocate): Use an unsigned - type for "relocation". - -2020-09-01 Alan Modra - - * reloc.c (N_ONES): Handle N=0. - * elf32-arm.c (elf32_arm_howto_table_1): Set complain_overflow_dont - for R_ARM_TLS_DESCSEQ and R_ARM_THM_TLS_DESCSEQ. - -2020-09-01 Alan Modra - - PR 26429 - * elf32-arm.c (elf32_arm_allocate_local_sym_info): Allocate arrays - in descending order of alignment. - -2020-09-01 Alan Modra - - PR 26423 - * elf32-arm.c (calculate_group_reloc_mask): Use 3u in shift. - -2020-08-31 Alan Modra - - PR 26493 - * elfnn-riscv.c (riscv_make_plt_header): Cast PLT_HEADER_SIZE to - unsigned when using with RISCV_ITYPE. - (_bfd_riscv_relax_call): Use an unsigned foff. - -2020-08-31 Alan Modra - - PR 26476 - PR 26477 - * elfxx-mips.c (CRINFO_CTYPE, CRINFO_RTYPE, CRINFO_DIST2TO), - (CRINFO_RELVADDR): Make unsigned. - (mips_elf_nullify_got_load): Use unsigned constant when shifting - into sign bit. - -2020-08-31 Alan Modra - - PR 26466 - * mep-relocs.pl (emit_apply): Handle HI16S adjustment. Use "u" - variable and rewrite signed overflow check. - * elf32-mep.c: Regenerate. - (mep_final_link_relocate): Delete "s". - -2020-08-31 Alan Modra - - PR 26461 - * elfxx-ia64.c (ia64_elf_install_value): Make expressions unsigned - that might shift values into sign bit. - -2020-08-31 Alan Modra - - PR 26445 - * elf32-csky.c (csky_relocate_contents): Make relocation a bfd_vma, - and similarly for variables dealing with overflow. - -2020-08-31 Alan Modra - - PR 26442 - * elf32-crx.c (crx_elf_final_link_relocate): Calculate reloc_bits - without undefined behaviour. Tidy excess casts. - -2020-08-31 Alan Modra - - * elf-m10300.c (mn10300_elf_relax_delete_bytes): Calculate - alignment from reloc addend after reloc type R_MN10300_ALIGN is - found. - -2020-08-30 Alan Modra - - PR 26435 - PR 26436 - * elf32-cr16.c (cr16_elf_final_link_relocate): Calculate reloc_bits - without undefined behaviour. - -2020-08-29 Nick Clifton - - PR 26520 - * dwarf2.c (scan_unit_for_symbols): Add member entries to the - variable table. - -2020-08-29 Alan Modra - - PR 26459 - * elfnn-ia64.c (get_dyn_sym_info): Don't bsearch or look at last - element when count is zero. bfd_realloc when shrinking. - -2020-08-28 Alan Modra - - PR 26418 - * ecofflink.c (bfd_ecoff_write_accumulated_debug): Don't write - zero size buffers. - -2020-08-28 Alan Modra - - PR 26418 - * ecofflink.c (WRITE): Really don't write zero size chunks. - -2020-08-28 Tuckker - - PR 26543 - * linker.c (bfd_generic_define_common_symbol): Force the alignment - to 1 if the section has now alignment requirement. - -2020-08-28 Cooper Qu - - * elf32-csky.c (csky_archs): Fix arch names. - (csky_find_arch_with_name): New. - (elf32_csky_merge_attributes): New. - (csky_elf_merge_private_bfd_data): Add process of merge - attribute section. - (elf32_csky_obj_attrs_arg_type): New. - (elf32_csky_obj_attrs_handle_unknown): New. - (elf_backend_obj_attrs_vendor): Define. - (elf_backend_obj_attrs_section): Define. - (elf_backend_obj_attrs_arg_type): Define. - (elf_backend_obj_attrs_section_type): Define. - -2020-08-28 Nick Clifton - - PR19011 - * cofflink.c (_bfd_coff_generic_relocate_section): Provide a value - for undefined symbols which will not generate extra warning - messages about truncated relocs. - -2020-08-28 Nelson Chu - - * elfnn-riscv.c (riscv_elf_check_relocs): Treat R_RISCV_CALL - and R_RISCV_CALL_PLT as the same in the riscv_elf_check_relocs. - (riscv_elf_relocate_section): Remove the R_RISCV_CALL for the - unresolved reloc checks. - -2020-08-27 John David Anglin - - PR 26356 - * som.c (som_bfd_copy_private_section_data): Issue error when a - subspace is specified without its containing space. - -2020-08-27 Alan Modra - - PR 26469 - * elflink.c: Include limits.h. - (CHAR_BIT): Provide fallback define. - (set_symbol_value): Correct complex reloc comment. - (undefined_reference): Set bfd_error. - (BINARY_OP_HEAD, BINARY_OP_TAIL): Split out from.. - (BINARY_OP): ..this. - (eval_symbol): Limit shifts. Force unsigned for left shift. - Catch divide by zero. - * configure.ac (AC_CHECK_HEADERS): Combine, sort and add limits.h. - * configure: Regenerate. - * config.in: Regenerate. - -2020-08-27 Alan Modra - - PR 26462 - * reloc.c (bfd_check_overflow): Return early if zero bitsize. - -2020-08-27 Alan Modra - - * elf32-arm.c (elf32_arm_final_link_relocate): Don't segfault - on sym_sec not being output. - -2020-08-27 Alan Modra - - PR 26416 - * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Correct "dynamic". - -2020-08-26 Nick Clifton - - PR 26433 - * elf32-avr.c (avr_final_link_relocate): Fix undefined shift - behaviour. - (avr_elf32_load_records_from_section): Use bfd_get_16 and - bfd_get_32 to load values from potentially unaligned pointers. - - PR 26416 - * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Test for and - ignore local symbols. - (elf64_alpha_relax_got_load): Do not check for local dynamic - symbols. - (OP_LDA, OP_LDAH, OP_LDQ, OP_BR, OP_BSR): Use unsigned constant - values. - (INSN_A) Cast the A parameter to unsigned. - (INSN_AB): Define in terms of INSN_A. - (INSN_ABC): Likewise. - (INSN_ABO): Likewise. - (INSN_AD): Likewise. - - PR 26411 - * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Use an - unsigned long constant when creating a mask to test for alignment - issues. - -2020-08-26 Alan Modra - - PR 26507 - * elf32-xtensa.c (find_removed_literal): Don't bsearch empty map. - -2020-08-26 Alan Modra - - PR 26506 - * elf32-xtensa.c (elf_xtensa_combine_prop_entries): Return early - when section is empty. - -2020-08-26 Alan Modra - - PR 26498 - * elf32-spu.c (find_function_stack_adjust): Use unsigned vars to - avoid UB left shift. - -2020-08-26 Alan Modra - - PR 26484 - PR 26485 - PR 26486 - PR 26487 - PR 26488 - PR 26490 - * elf64-ppc.c (is_tls_get_addr): Avoid UB &h->elf when h is NULL. - (ppc64_elf_tls_setup): Likewise. - (branch_reloc_hash_match): Likewise. - (build_plt_stub): Likewise. - (ppc64_elf_relocate_section): Likewise. - -2020-08-26 Alan Modra - - PR 26478 - * mmo.c (mmo_write_symbols_and_terminator): Don't memcpy empty table. - -2020-08-26 Alan Modra - - PR 26475 - * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Check - sstubs->contents != NULL. - -2020-08-26 Alan Modra - - PR 26453 - * som.c (som_prep_for_fixups): Return early when no symbols. - -2020-08-26 Alan Modra - - PR 26418 - * ecofflink.c (WRITE): Don't write size 0 chunks. - -2020-08-26 Alan Modra - - * bfdio.c (bfd_get_file_size): Don't segv on NULL adata. - -2020-08-26 Alan Modra - - PR 26415 - * vms-misc.c (vms_time_t_to_vms_time): Don't use unsigned short vars. - -2020-08-26 David Faust - - * archures.c (bfd_mach_xbpf): Define. - * bfd-in2.h: Regenerate. - * cpu-bpf.c (bfd_xbpf_arch) New. - (bfd_bpf_arch) Update next in list field to point to xbpf arch. - -2020-08-26 Alan Modra - - * archures.c (bfd_mach_ck860): Define. - -2020-08-25 Mark Wielaard - - * dwarf2.c (struct dwarf2_debug_file): Add dwarf_rnglists_buffer - and dwarf_rnglists_size fields. - (dwarf_debug_sections): Add debug_rnglists. - (dwarf_debug_section_enum): Likewise. - (read_debug_rnglists): New function. - (read_rangelist): New function to call either read_ranges or - read_rnglists. Rename original function to... - (read_ranges): ...this. - (read_rnglists): New function. - -2020-08-25 Alan Modra - - PR 26505 - * elf32-xstormy16.c (xstormy16_elf_relax_section): Check - is_elf_hash_table before accessing elf fields. - -2020-08-25 Alan Modra - - PR 26482 - * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Ignore sections that - won't be output. - -2020-08-25 Alan Modra - - PR 26463 - * elf32-m32c.c (m32c_elf_relax_section): Check is_elf_hash_table - before accessing elf fields. - -2020-08-25 Alan Modra - - PR 26452 - * som.c (som_compute_checksum): XOR 32-bit words in header, - not unsigned long sized words. - -2020-08-25 Alan Modra - - PR 26430 - * elf-nacl.c (nacl_modify_segment_map): Correct alloc size and - amount copied for elf_segment_map defined with one element - sections array. - -2020-08-25 Alan Modra - - PR 26422 - * elf32-arm.c (elf32_arm_final_link_relocate): Use the appropriate - bfd_get_x size function to read addends out of fields. Apply - rightshift adjustment too. Don't apply the now unnecessary - howto->size shift to branch REL addends. Don't refetch R_ARM_ABS8 - and R_ARM_ABS16 addends. Don't refetch thumb branch addends. - Correct R_ARM_THM_JUMP6 addend. - -2020-08-25 Alan Modra - - PR 26419 - * elf-m10300.c (mn10300_elf_relax_section): Don't attempt access - before start of section. - -2020-08-25 Alan Modra - - * elf-m10300.c (elf32_mn10300_hash_table): Test is_elf_hash_table - before accessing elf_hash_table_id. - * elf32-arc.c (elf_arc_hash_table): Likewise. - * elf32-arm.c (elf32_arm_hash_table): Likewise. - * elf32-avr.c (avr_link_hash_table): Likewise. - * elf32-bfin.c (bfinfdpic_hash_table): Likewise. - * elf32-cris.c (elf_cris_hash_table): Likewise. - * elf32-csky.c (csky_elf_hash_table): Likewise. - * elf32-frv.c (frvfdpic_hash_table): Likewise. - * elf32-hppa.c (hppa_link_hash_table): Likewise. - * elf32-lm32.c (lm32_elf_hash_table): Likewise. - * elf32-m32r.c (m32r_elf_hash_table): Likewise. - * elf32-m68hc1x.h (m68hc11_elf_hash_table): Likewise. - * elf32-m68k.c (elf_m68k_hash_table): Likewise. - * elf32-metag.c (metag_link_hash_table): Likewise. - * elf32-microblaze.c (elf32_mb_hash_table): Likewise. - * elf32-nds32.h (nds32_elf_hash_table): Likewise. - * elf32-or1k.c (or1k_elf_hash_table): Likewise. - * elf32-s390.c (elf_s390_hash_table): Likewise. - * elf32-sh.c (sh_elf_hash_table): Likewise. - * elf32-spu.c (spu_hash_table): Likewise. - * elf32-tilepro.c (tilepro_elf_hash_table): Likewise. - * elf32-xtensa.c (elf_xtensa_hash_table): Likewise. - * elf64-alpha.c (alpha_elf_hash_table): Likewise. - * elf64-hppa.c (hppa_link_hash_table): Likewise. - * elf64-ia64-vms.c (elf64_ia64_hash_table): Likewise. - * elf64-s390.c (elf_s390_hash_table): Likewise. - * elfnn-ia64.c (elfNN_ia64_hash_table): Likewise. - * elfnn-riscv.c (riscv_elf_hash_table): Likewise. - * elfxx-mips.c (mips_elf_hash_table): Likewise. - * elfxx-sparc.h (_bfd_sparc_elf_hash_table): Likewise. - * elfxx-tilegx.c (tilegx_elf_hash_table): Likewise. - -2020-08-21 Jon Turney - - * elf.c (elfcore_grok_win32pstatus): Change name_size to unsigned - int. Use '%u' format with _bfd_error_handler to render it. - -2020-08-25 Alan Modra - - PR 26489 - * elf64-ppc.c (ppc64_elf_size_stubs): Test code_sec->has_toc_reloc - and code_sec->makes_toc_func_call before sec_info[code_sec->id]. - -2020-08-25 Alan Modra - - PR 26492 - * elf64-ppc.c (ppc_hash_table): Test is_elf_hash_table before - accessing elf_hash_table_id. - -2020-08-25 Alan Modra - - PR 26483 - * elf32-ppc.c (ppc_elf_hash_table): Test is_elf_hash_table before - accessing elf_hash_table_id. - -2020-08-24 Mark Wielaard - - * dwarf2.c (read_attribute_value): Handle DW_FORM_data16. - (read_formatted_entries): Likewise. And skip zero entry. - -2020-08-24 Cooper Qu - - * bfd-in2.h (bfd_mach_ck860): New. - * cpu-csky.c (arch_info_struct): Add item for CK860. - -2020-08-24 Alan Modra - - * elf32-ppc.c (ppc_elf_check_relocs): Set has_tls_reloc for - high part tprel16 relocs. - (ppc_elf_tls_optimize): Sanity check high part tprel16 relocs. - Clear do_tls_opt on odd instructions. - (ppc_elf_relocate_section): Move TPREL16_HA/LO optimisation later. - Don't sanity check them here. - * elf64-ppc.c (ppc64_elf_check_relocs): Set has_tls_reloc for - high part tprel16 relocs. - (ppc64_elf_tls_optimize): Sanity check high part tprel16 relocs. - Clear do_tls_opt on odd instructions. - (ppc64_elf_relocate_section): Don't sanity check TPREL16_HA. - -2020-08-23 John David Anglin - - PR binutils/26357 - * configure.ac: Disable plugins by default on 32-bit hppa*-*-hpux*. - * configure: Regenerate. - -2020-08-22 H.J. Lu - - PR ld/26382 - * elflink.c (elf_link_output_symstrtab): Keep only one '@' for - versioned symbols, which are defined in shared objects, in - symbol string table. - -2020-08-21 Nick Clifton - - * elfnn-aarch64.c (_bfd_aarch64_erratum_835769_scan): Only sort - the data map if there are entries in it. - (_bfd_aarch64_erratum_843419_scan): Likewise. - -2020-08-21 Jan Beulich - - * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Check - last byte of debug dir, not first. - -2020-08-20 Nick Clifton - - PR 26428 - * bfd.c (bfd_update_compression_header): Also set the sh_addralign - field in the ELF header of the compressed sections. - -2020-08-20 Nick Clifton - - PR 26406 - * elf-bfd.h (struct bfd_elf_section_data): Add - has_secondary_relocs field. - * elf.c (_bfd_elf_copy_special_section_fields): Set the - has_secondary_relocs field for sections which have associated - secondary relocs. - * elfcode.h (elf_write_relocs): Only call write_secondary_relocs - on sections which have associated secondary relocs. - -2020-08-15 Alan Modra - - * elf32-frv.c (elf32_frv_add_symbol_hook): Set SEC_SMALL_DATA on - small common section. - * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise. - * elf32-microblaze.c (microblaze_elf_add_symbol_hook): Likewise. - * elf32-nds32.c (nds32_elf_add_symbol_hook): Likewise. - * elf32-nios2.c (nios2_elf_add_symbol_hook): Likewise. - * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise. - * elf32-score.c (s3_bfd_score_elf_add_symbol_hook): Likewise. - * elf32-score7.c (s7_bfd_score_elf_add_symbol_hook): Likewise. - * elf32-tic6x.c (elf32_tic6x_add_symbol_hook): Likewise. - * elf32-v850.c (v850_elf_check_relocs): Likewise. - (v850_elf_add_symbol_hook): Likewise. - * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise. - * elf64-ia64-vms.c (elf64_ia64_add_symbol_hook): Likewise. - * elfnn-ia64.c (elfNN_ia64_add_symbol_hook): Likewise. - * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Likewise. - -2020-08-15 Alan Modra - - PR 26389 - * syms.c (bfd_decode_symclass): Choose 'c' for commons only when - SEC_SMALL_DATA. - * elf32-m32r.c (_bfd_m32r_elf_symbol_processing): Set SEC_SMALL_DATA - on small common section. - * elf32-score.c (s3_bfd_score_elf_symbol_processing): Likewise. - * elf32-score7.c (s7_bfd_score_elf_symbol_processing): Likewise. - * elf32-tic6x.c (elf32_tic6x_symbol_processing): Likewise. - * elf32-v850.c (v850_elf_symbol_processing): Likewise. - * elfxx-mips.c (_bfd_mips_elf_symbol_processing): Likewise. - * ecoff.c (ecoff_set_symbol_info, ecoff_link_add_externals): Likewise. - -2020-08-14 Alan Modra - - * hash.c (bfd_hash_set_default_size): Use higher_prime_number - rather than another copy of primes. Increase maximum default - size allowed. - -2020-08-13 Alan Modra - - * config.bfd: Obsolete arm*-*-symbianelf*, and ia64*-*-*. - -2020-08-13 Alan Modra - - * elf64-ppc.h (struct ppc64_elf_params): Add no_pcrel_opt. - * elf64-ppc.c (ppc64_elf_relocate_section): Disable GOT reloc - optimizations when --no-toc-optimize. Disable R_PPC64_PCREL_OPT - optimization when --no-pcrel-optimize. - -2020-08-13 Alan Modra - - PR 26348 - * bfd.c (struct bfd): Add read_only. - * elfcode.h (elf_swap_shdr_in): Test both sh_offset and sh_size. - Set read_only on warning. - (elf_object_p): Sanity check program header alignment. Set - read_only on warning. - * bfd-in2.h: Regenerate. - -2020-08-12 Jon Turney - - * elf.c (elfcore_grok_win32pstatus): Use unsigned int for - win32pstatus note type to avoid signedness comparison warning. - -2020-07-21 Jon Turney - - * elf.c (elfcore_grok_win32pstatus): Warn on malformed - win32pstatus notes, and return TRUE so we continue rather than - stopping as if it was an error. - -2020-07-01 Jon Turney - - * elf.c (elfcore_grok_win32pstatus): Handle NOTE_INFO_MODULE64. - -2020-07-11 Jon Turney - - * elf.c (elfcore_grok_win32pstatus): Don't apply size constraint - for NOTE_INFO_THREAD to all win32pstatus ELF notes, instead apply - appropriate size constraint for each win32pstatus note type. - -2020-07-01 Jon Turney - - * elf.c (elfcore_grok_win32pstatus): Don't hardcode the size of - the Win32 API thread CONTEXT type read from a NOTE_INFO_THREAD - win32pstatus note. - -2020-07-11 Jon Turney - - * elf.c (NOTE_INFO{_PROCESS,_THREAD,_MODULE}): Define. - (elfcore_grok_win32pstatus): Use. - -2020-07-01 Jon Turney - - * elf.c (elfcore_grok_win32pstatus): Fix the offset used to read - the tid from a win32pstatus NOTE_INFO_THREAD ELF note. Fix - offsets used to read NOTE_INFO_PROCESS. - -2020-08-12 Nick Clifton - - * po/ru.po: Updated Russian translation. - * po/sr.po: Updated Serbian translation. - -2020-08-07 David Faust - - * elf64-bpf.c (bpf_elf_relocate_section): Ensure signed division for - DISP16 and DISP32 relocations. - -2020-08-05 David Faust - - * elf64-bpf.c (bpf_elf_generic_reloc): New function. - (bpf_elf_howto_table): Use it here. - (bpf_elf_relocate_section): Use addends recorded in input_bfd for - instruction and data relocations. - -2020-08-03 Alan Modra - - * vms-lib.c (vms_traverse_index): Sanity check size remaining - before accessing vms_idx or vms_elfidx. - -2020-08-03 Alan Modra - - PR 26330 - * elf.c (_bfd_elf_get_symtab_upper_bound): Sanity check symbol table - size against file size. Correct LONG_MAX limit check. - (_bfd_elf_get_dynamic_symtab_upper_bound): Likewise. - (_bfd_elf_get_reloc_upper_bound): Don't check file size if writing. - (_bfd_elf_get_dynamic_reloc_upper_bound): Likewise. - * elf64-x86-64-.c (elf_x86_64_get_synthetic_symtab): Use - bfd_malloc_and_get_section. - -2020-07-31 Alan Modra - - PR 26314 - * elflink.c (bfd_elf_link_record_dynamic_symbol): Don't allow - IR symbols to become dynamic. - (elf_link_add_object_symbols): Don't exclude IR symbols when - deciding whether an as-needed shared library is needed. - -2020-07-30 Szabolcs Nagy - - PR ld/26312 - * elfnn-aarch64.c (elfNN_aarch64_init_small_plt0_entry): Set sh_entsize - to 0. - (elfNN_aarch64_finish_dynamic_sections): Remove sh_entsize setting. - -2020-07-30 Rainer Orth - - * bfd.m4 (BFD_SYS_PROCFS_H): New macro. - (BFD_HAVE_SYS_PROCFS_TYPE): Require BFD_SYS_PROCFS_H. - Don't define _STRUCTURED_PROC. - (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Likewise. - * elf.c [HAVE_SYS_PROCFS_H] (_STRUCTURED_PROC): Don't define. - * configure.ac: Use BFD_SYS_PROCFS_H to check for . - * configure, config.in: Regenerate. - * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. - * Makefile.in, doc/Makefile.in: Regenerate. - -2020-07-30 H.J. Lu - - * elf-bfd.h (sym_cache): Moved before elf_link_hash_table. - (elf_link_hash_table): Add sym_cache. - * elf32-arm.c (elf32_arm_link_hash_table): Remove sym_cache. - (elf32_arm_check_relocs): Updated. - (elf32_arm_size_dynamic_sections): Likewise. - * elf32-bfin.c (bfin_link_hash_table): Removed. - (bfin_link_hash_newfunc): Updated. - (bfin_hash_table): Removed. - * elf32-csky.c (csky_elf_link_hash_table): Remove sym_cache. - (csky_elf_check_relocs): Updated. - * elf32-hppa.c (elf32_hppa_link_hash_table): Remove sym_cache. - (elf32_hppa_check_relocs): Updated. - * elf32-i386.c (elf_i386_tls_transition): Updated. - (elf_i386_convert_load_reloc): Likewise. - (elf_i386_check_relocs): Likewise. - * elf32-m32r.c (elf_m32r_link_hash_table): Removed. - (m32r_elf_hash_table): Updated. - (m32r_elf_link_hash_table_create): Likewise. - (m32r_elf_create_dynamic_sections): Likewise. - (m32r_elf_adjust_dynamic_symbol): Likewise. - (allocate_dynrelocs): Likewise. - (m32r_elf_size_dynamic_sections): Likewise. - (m32r_elf_relocate_section): Likewise. - (m32r_elf_finish_dynamic_symbol): Likewise. - (m32r_elf_check_relocs): Likewise. - * elf32-m68hc1x.h (m68hc11_elf_link_hash_table): Remove - sym_cache. - * elf32-m68k.c (elf_m68k_link_hash_table): Likewise. - (elf_m68k_check_relocs): Updated. - * elf32-metag.c (elf_metag_link_hash_table): Remove sym_cache. - (elf_metag_check_relocs): Updated. - * elf32-microblaze.c (elf32_mb_link_hash_table): Remove sym_sec. - (microblaze_elf_check_relocs): Updated. - * elf32-nds32.c (nds32_elf_link_hash_table_create): Likewise. - (nds32_elf_create_dynamic_sections): Likewise. - (nds32_elf_adjust_dynamic_symbol): Likewise. - (nds32_elf_check_relocs): Likewise. - * elf32-nds32.h (elf_nds32_link_hash_table): Remove sdynbss, - srelbss and aym_cache. - * elf32-nios2.c (elf32_nios2_link_hash_table): Remove sym_cache. - (nios2_elf32_check_relocs): Updated. - * elf32-or1k.c (elf_or1k_link_hash_table): Remove sym_sec. - (or1k_elf_check_relocs): Updated. - * elf32-ppc.c (ppc_elf_check_relocs): Remove sym_cache. - (ppc_elf_check_relocs): Updated. - * elf32-s390.c (elf_s390_link_hash_table): Remove sym_cache. - (elf_s390_check_relocs): Updated. - (elf_s390_finish_dynamic_sections): Likewise. - * elf32-sh.c (elf_sh_link_hash_table): Remove sdynbss, srelbss - and aym_cache. - (sh_elf_create_dynamic_sections): Updated. - (sh_elf_adjust_dynamic_symbol): Likewise. - (sh_elf_size_dynamic_sections): Likewise. - (sh_elf_check_relocs): Likewise. - * elf32-tic6x.c (elf32_tic6x_link_hash_table): Remove sym_cache. - (elf32_tic6x_check_relocs): Updated. - * elf32-tilepro.c (tilepro_elf_link_hash_table): Removed. - (tilepro_elf_hash_table): Updated. - (tilepro_elf_link_hash_table_create): Likewise. - (tilepro_elf_check_relocs): Likewise. - (tilepro_elf_adjust_dynamic_symbol): Likewise. - (allocate_dynrelocs): Likewise. - (tilepro_elf_size_dynamic_sections): Likewise. - (tilepro_elf_relocate_section): Likewise. - (tilepro_elf_finish_dynamic_symbol): Likewise. - (tilepro_finish_dyn): Likewise. - (tilepro_elf_finish_dynamic_sections): Likewise. - * elf64-ppc.c (ppc_link_hash_table): Remove sym_cache. - (ppc64_elf_before_check_relocs): Updated. - (ppc64_elf_check_relocs): Likewise. - * elf64-s390.c (elf_s390_link_hash_table): Remove sym_cache. - (elf_s390_check_relocs): Updated. - (elf_s390_relocate_section): Likewise. - (elf_s390_finish_dynamic_sections): Likewise. - * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. - (elf_x86_64_check_relocs): Likewise. - * elfnn-aarch64.c (elf_aarch64_link_hash_table): Remove - sym_cache. - (elfNN_aarch64_check_relocs): Updated. - * elfnn-riscv.c (riscv_elf_link_hash_table): Remove sym_cache. - (riscv_elf_check_relocs): Updated. - * elfxx-mips.c (mips_elf_link_hash_table): Remove sym_cache. - (mips_elf_resolve_got_page_ref): Updated. - * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. - * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove - sym_cache. - * elfxx-tilegx.c (tilegx_elf_link_hash_table): Likewise. - (tilegx_elf_check_relocs): Updated. - * elfxx-x86.h (elf_x86_link_hash_table): Remove sym_cache. - -2020-07-29 Maciej W. Rozycki - - * elflink.c (bfd_elf_final_link): Give local symbols a name if - so requested. - * elfxx-mips.c (_bfd_mips_elf_name_local_section_symbols): Only - return TRUE if making ET_REL output. - -2020-07-29 Maciej W. Rozycki - - * elf-bfd.h (elf_backend_data): Add - `elf_backend_elfsym_local_is_section' member. - * elfxx-target.h (elf_backend_elfsym_local_is_section): New - macro. - (elfNN_bed): Add `elf_backend_elfsym_local_is_section' member. - * elflink.c (bfd_elf_final_link): Use it to determine whether - set the `.symtab' section's `sh_info' value to the index of the - first non-local or non-section symbol. - * elf32-mips.c (mips_elf32_elfsym_local_is_section): New - function. - (elf_backend_elfsym_local_is_section): New macro. - * elfn32-mips.c (mips_elf_n32_elfsym_local_is_section): New - function. - (elf_backend_elfsym_local_is_section): New macro. - -2020-07-29 Alan Modra - - * elflink.c (bfd_elf_final_link): Don't segfault on local dynsyms - defined in excluded sections. - -2020-07-28 Alan Modra - - * elf.c (assign_section_numbers): Comment. Don't segfault on - discarded sections when setting linked-to section for generic - ELF linker. - * elflink.c (bfd_elf_match_symbols_in_sections): Allow NULL info. - -2020-07-27 Alan Modra - - * xcofflink.c (xcoff_need_ldrel_p): Accept --just-symbols symbols and - similar as absolute. - (bfd_xcoff_import_symbol): Don't fuss over absolute symbol - redefinitions here. - -2020-07-24 Nick Clifton - - * config.bfd: Move xc16x target to the obsolete list. - -2020-07-22 Kevin Buettner - - * binary.c (binary_get_section_contents): Seek using offset - from section's file position. - -2020-07-22 Kevin Buettner - - * elf.c (_bfd_elf_make_section_from_phdr): Remove hack for GDB. - -2020-07-22 Max Filippov - - PR 26246 - * elf32-xtensa.c (removed_literal_compare): Use correct pointer - type for the first function argument. Rename pointers to reflect - that they have distinct types. - -2020-07-20 Alan Modra - - * elflink.c (_bfd_elf_gc_keep): Use bfd_is_const_section. - -2020-07-19 Alan Modra - - * elf64-ppc.c (struct ppc_link_hash_table): Add has_power10_relocs. - (select_alt_stub): New function. - (ppc_get_stub_entry): Use it here. - (ppc64_elf_check_relocs): Set had_power10_relocs rather than - power10_stubs. - (ppc64_elf_size_stubs): Clear power10_stubs here instead. Don't - merge notoc stubs with other varieties when power10_stubs is "auto". - Instead dup the stub hash table entry. - (plt_stub_size, ppc_build_one_stub, ppc_size_one_stub): Adjust - tests of power10_stubs. - -2020-07-15 Alan Modra - - PR 26239 - * coffgen.c (_bfd_coff_close_and_cleanup): Free dwarf2 info. - -2020-07-15 Nick Clifton - - PR26240 - * coffgen.c (coff_get_normalized_symtab): Fix off-by-one error in - check for aux entries that overflow the buufer. - -2020-07-15 Hans-Peter Nilsson - - * elf64-mmix.c (mmix_elf_relax_section): Improve accounting for - R_MMIX_PUSHJ_STUBBABLE relocs against undefined symbols. - -2020-07-15 Markus Böck - Alan Modra - - PR 26198 - * coffgen.c (_bfd_coff_section_already_linked): Allow for plugin - objects both before and after normal object files. - * elflink.c (_bfd_elf_section_already_linked): Likewise. - -2020-07-10 Alan Modra - - * elf64-ppc.h (struct ppc64_elf_params): Add power10_stubs. - * elf64-ppc.c (struct ppc_link_hash_table): Delete - power10_stubs. - (ppc64_elf_check_relocs): Adjust setting of power10_stubs. - (plt_stub_size, ppc_build_one_stub, ppc_size_one_stub): Adjust - uses of power10_stubs. - -2020-07-09 Alan Modra - - * coff-ppc.c: Delete. - * pe-ppc.c: Delete. - * pei-ppc.c: Delete. - * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Remove PE PPC. - * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): Remove - PPCMAGIC code. - (coff_write_object_contents): Remove PPC_PE code. - * config.bfd: Move powerpcle-pe to removed targets. - * configure.ac: Remove powerpc PE entries. - * libcoff-in.h (ppc_allocate_toc_section): Delete. - (ppc_process_before_allocation): Delete. - * peXXigen.c: Remove POWERPC_LE_PE code and comments. - * targets.c: Remove powerpc PE vectors. - * po/SRC-POTFILES.in: Regenerate. - * libcoff.h: Regenerate. - * Makefile.in: Regenerate. - * configure: Regenerate. - -2020-07-09 Nick Clifton - - * po/fr.po: Updated French translation. - -2020-07-07 Alan Modra - - * xcofflink.c (xcoff_mark): Don't mark const sections. - (bfd_xcoff_record_link_assignment): Add FIXME. - (_bfd_xcoff_bfd_final_link): Don't segfault on assorted magic - sections being discarded by linker script. - -2020-07-07 Alan Modra - - * coff-rs6000.c (xcoff_write_archive_contents_old): Set default - time, uid, gid and mode for deterministic archive. - (xcoff_write_archive_contents_big): Likewise. - -2020-07-07 Alan Modra - - * coffcode.h (coff_classify_symbol): Handle C_HIDEXT and - C_AIX_WEAKEXT. - -2020-07-06 Nick Clifton - - * po/pt.po: Updated Portuguese translation. - * po/uk.po: Updated Ukranian translation. - -2020-07-04 Nick Clifton - - * version.m4: Set version to 2.35.50. - * configure: Regenerate. - * po/bbfd.pot: Regenerate. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-07-01 Alan Modra - - PR 26188 - * coffgen.c (coff_find_nearest_line_with_names): Sanity check - raw syment index before dereferencing. - -2020-07-01 Alan Modra - - * elf32-i386.c (elf_backend_object_p): Undef for vxworks. - -2020-07-01 Alan Modra - - * config.bfd: Obsolete xc16x. - -2020-06-30 H.J. Lu - - * archures.c (bfd_mach_i386_nacl): Removed. - (bfd_mach_i386_i386_nacl): Likewise. - (bfd_mach_x86_64_nacl): Likewise. - (bfd_mach_x64_32_nacl): Likewise. - * config.bfd: Remove *-*-nacl* targets. - * configure.ac: Remove x86 NaCl target vectors. - * cpu-i386.c (bfd_arch_i386_onebyte_nop_fill): Removed. - (bfd_x64_32_nacl_arch): Likewise. - (bfd_x86_64_nacl_arch): Likewise. - (bfd_i386_nacl_arch): Likewise. - (bfd_x64_32_arch_intel_syntax): Updated. - * elf32-i386.c: Don't include "elf-nacl.h". - (elf_i386_nacl_plt): Removed. - (elf_i386_nacl_plt0_entry): Likewise. - (elf_i386_nacl_plt_entry): Likewise. - (elf_i386_nacl_pic_plt0_entry): Likewise. - (elf_i386_nacl_pic_plt_entry): Likewise. - (elf_i386_nacl_eh_frame_plt): Likewise. - (elf_i386_nacl_plt): Likewise. - (elf32_i386_nacl_elf_object_p): Likewise. - (elf_i386_get_synthetic_symtab): Updated. - (elf_i386_link_setup_gnu_properties): Likewise. - * elf64-x86-64.c: Don't include "elf-nacl.h". - (elf_x86_64_nacl_plt): Removed. - (elf64_x86_64_nacl_elf_object_p): Likewise. - (elf_x86_64_nacl_plt0_entry): Likewise. - (elf_x86_64_nacl_plt_entry): Likewise. - (elf_x86_64_nacl_eh_frame_plt): Likewise. - (elf_x86_64_nacl_plt): Likewise. - (elf32_x86_64_nacl_elf_object_p): Likewise. - (elf_x86_64_get_synthetic_symtab): Updated. - (elf_x86_64_link_setup_gnu_properties): Likewise. - * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Likewise. - * targets.c: Remove x86 NaCl target vectors. - * bfd-in2.h: Regenerated. - * configure: Likewise. - -2020-06-29 H.J. Lu - - * elf32-tic6x.c (elf32_tic6x_size_dynamic_sections): Call - _bfd_elf_add_dynamic_tags. - -2020-06-29 Alan Modra - - * peXXigen.c (_bfd_XXi_slurp_codeview_record): Properly check - return value of bfd_bread. Don't read more than requested length. - Sanity check length. Properly terminate file name. - -2020-06-29 Alan Modra - - * arc-got.h: Use C style comments. - * coff-z80.c: Likewise. - * elf32-csky.c: Likewise. - * peXXigen.c: Likewise. - * elf32-m32c.c (m32c_elf_relax_delete_bytes): Remove commented out - code. - -2020-06-26 Pat Bernardi - - * elf32-m68k.c (m68k_elf_merge_obj_attributes): New function. - (elf32_m68k_merge_private_bfd_data): Merge GNU attributes. - -2020-06-26 Alan Modra - - * elfxx-riscv.c (struct priv_spec_t, priv_specs), - (riscv_get_priv_spec_class, riscv_get_priv_spec_class_from_numbers), - (riscv_get_priv_spec_name): Move to.. - * cpu-riscv.c: ..here. - (riscv_get_priv_spec_class_from_numbers): Don't xmalloc temp buffer. - Use %u to print unsigned numbers. - -2020-06-24 Andrew Burgess - - * cpu-riscv.c (riscv_scan): Don't allow shorter matches using the - default architecture. - -2020-06-24 H.J. Lu - - PR ld/26083 - * elf32-csky.c (csky_elf_size_dynamic_sections): Call - _bfd_elf_add_dynamic_tags. - -2020-06-24 H.J. Lu - - PR ld/26083 - * elf32-cris.c (elf_cris_size_dynamic_sections): Call - _bfd_elf_add_dynamic_tags. - -2020-06-24 Alan Modra - - * vms-alpha.c (_bfd_vms_slurp_etir ): Implement - shifts without undefined behaviour. - -2020-06-23 H.J. Lu - - * elf-bfd.h (elf_link_hash_table): Add dt_pltgot_required and - dt_jmprel_required. - (_bfd_elf_add_dynamic_tags): New. - * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Call - _bfd_elf_add_dynamic_tags. - * elf32-arc.c (elf_arc_size_dynamic_sections): Likewise. - * elf32-bfin.c (elf32_bfinfdpic_size_dynamic_sections): Likewise. - * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise. - * elf32-frv.c (elf32_frvfdpic_size_dynamic_sections): Likewise. - * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise. - * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise. - * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. - * elf32-microblaze.c (microblaze_elf_size_dynamic_sections): - Likewise. - * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise. - * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise. - * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise. - * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise. - * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise. - * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise. - * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. - * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): - Likewise. - * elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise. - * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise. - * elf32-arm.c (elf32_arm_size_dynamic_sections): Call - _bfd_elf_maybe_vxworks_add_dynamic_tags. - * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): - Likewise. - * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Likewise. - (_bfd_x86_elf_size_dynamic_sections): Likewise. - * elfxx-x86.h (elf_x86_link_hash_table): Remove dt_reloc, - dt_reloc_sz and dt_reloc_ent. - * elf-vxworks.c (_bfd_elf_maybe_vxworks_add_dynamic_tags): New. - * elf-vxworks.h (_bfd_elf_maybe_vxworks_add_dynamic_tags): - Likewise. - * elf32-hppa.c (elf32_hppa_link_hash_table_create): Set - etab.dt_pltgot_required. - (elf32_hppa_size_dynamic_sections): Call - _bfd_elf_add_dynamic_tags. - * elf32-metag.c (elf_metag_link_hash_table_create): Set - etab.dt_pltgot_required. - (elf_metag_size_dynamic_sections): Call _bfd_elf_add_dynamic_tags. - * elf32-sh.c (sh_elf_link_hash_table_create): Set - root.dt_pltgot_required for FDPIC output. - (sh_elf_size_dynamic_sections): Call - _bfd_elf_maybe_vxworks_add_dynamic_tags. - * elf32-xtensa.c (elf_xtensa_link_hash_table_create): Set - elf.dt_pltgot_required. - (elf_xtensa_size_dynamic_sections): Call - _bfd_elf_add_dynamic_tags. - * elf64-hppa.c (elf64_hppa_hash_table_create): Set - root.dt_pltgot_required. - (elf64_hppa_size_dynamic_sections): Call - _bfd_elf_add_dynamic_tags. - * elfnn-ia64.c (elfNN_ia64_hash_table_create): Set - root.dt_pltgot_required. - (elfNN_ia64_size_dynamic_sections): Set root.dt_jmprel_required - for rel_pltoff_sec. Call _bfd_elf_add_dynamic_tags. - * elflink.c (_bfd_elf_add_dynamic_tags): New. - -2020-06-22 Saagar Jha - - * mach-o.c: Support the new load commands by reading a linkedit - data command for them. - -2020-06-22 Nelson Chu - - * elfxx-riscv.c (struct priv_spec_t priv_specs[]): Move them from - opcodes/riscv-opc.c to bfd/elfxx-riscv.c, since we need it in linker. - (riscv_get_priv_spec_class): Likewise. - (riscv_get_priv_spec_name): Likewise. - (riscv_get_priv_spec_class_from_numbers): New function, convert - the version numbers into string, then call riscv_get_priv_spec_class - to get the priv spec class. - * elfxx-riscv.h (riscv_get_priv_spec_class): Move forward declaration - from include/opcode/riscv.h to bfd/elfxx-riscv.h. - (riscv_get_priv_spec_name): Likewise. - (riscv_get_priv_spec_class_from_numbers): New forward declaration. - (opcode/riscv.h): Include it in the header rather than elfxx-riscv.c. - * elfnn-riscv.c (riscv_merge_attributes): Get the priv spec classes - of input and output objects form their priv spec attributes by - riscv_get_priv_spec_class_from_numbers. Report warning rather than - errors when linking objects with differnet priv spec versions. We do - know v1.9.1 may have conflicts to other versions, so report the - warning, too. After that, update the output priv spec version to the - newest one so far. - -2020-06-22 Nelson Chu - - * elfnn-riscv.c (riscv_merge_attributes): Once we meet one of the - priv attributes, we will check the conflicts for all of them (major, - minor and revision), and then set the priv_attrs_merged to TRUE to - indicate that we have handled all of the priv attributes. Remove - the unused boolean priv_may_conflict, in_priv_zero and out_priv_zero. - -2020-06-21 Alan Modra - - PR 26132 - * configure.ac: Disable plugins by default for some targets. - * plugin.c: Comment typo fix. - * configure: Regenerate. - -2020-06-19 Nick Clifton - - * plugin.c (try_load_plugin): Suppress the error message about - being unable to open a plugin if creating a list of viable - plugins. - -2020-06-16 Alan Modra - - * aout-tic30.c: Delete file. - * Makefile.am (BFD32_BACKENDS): Remove aout-tic30.lo. - (BFD32_BACKENDS_CFILES): Remove aout-tic30.c. - * config.bfd (c30-*-*aout*, tic30-*-*aout*): Remove entry. - (xc16x-*-elf): Sort properly. - * configure.ac: Remove tic30_aout_vec. - * targets.c: Likewise. - * Makefile.in: Regenerate. - * configure: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - -2020-06-15 Max Filippov - - * elf32-xtensa.c (XSHAL_ABI, XTHAL_ABI_UNDEFINED) - (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New macros. - (elf32xtensa_abi): New global variable. - (xtensa_abi_choice): New function. - (elf_xtensa_create_plt_entry): Use xtensa_abi_choice instead of - XSHAL_ABI to select PLT code. - -2020-06-15 Roland McGrath - - * elflink.c (bfd_elf_define_start_stop): Use start_stop_visibility - field of bfd_link_info. - -2020-06-15 Alan Modra - - * config.bfd: Obsolete powerpcle-*-pe targets. - -2020-06-15 Alan Modra - - PR 26103 - * elflink.c (elf_link_add_archive_symbols): Exclude undefined - symbols that were defined in discarded sections. - * cofflink.c (coff_link_check_archive_element): Likewise. - (coff_link_add_symbols): Set indx to -3 for symbols defined in - discarded sections. - (_bfd_coff_write_global_sym): Don't emit such symbols. - libcoff-in.h (struct coff_link_hash_entry): Update indx comment. - libcoff.h: Regenerate. - -2020-06-11 Alan Modra - - PR 26107 - * pdp11.c (is_stab): Replace legacy "index" function with "strchr". - -2020-06-10 H.J. Lu - - * elfnn-ia64.c (elfNN_ia64_link_hash_table): Remove reltext. - (allocate_dynrel_entries): Set DF_TEXTREL instead of reltext. - (elfNN_ia64_size_dynamic_sections): Check DF_TEXTREL instead - of reltext. - -2020-06-10 H.J. Lu - - PR ld/26094 - * elflink.c (bfd_elf_define_start_stop): Handle common symbols. - Clear verinfo.verdef. - -2020-06-09 H.J. Lu - - PR ld/18801 - * elf-bfd.h (elf_link_hash_table): Add ifunc_resolvers. - (_bfd_elf_allocate_ifunc_dyn_relocs): Remove the - bfd_boolean * argument. Set ifunc_resolvers if there are IFUNC - resolvers. - * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated. - Set ifunc_resolvers if there are FUNC resolvers. - * elf64-ppc.c (ppc_link_hash_table): Remove local_ifunc_resolver. - (build_global_entry_stubs_and_plt): Replace local_ifunc_resolver - with elf.ifunc_resolvers. - (write_plt_relocs_for_local_syms): Likewise. - (ppc64_elf_relocate_section): Likewise. - (ppc64_elf_finish_dynamic_sections): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs): - Updated. - * elfxx-x86.c (elf_x86_allocate_dynrelocs): Likewise. - (_bfd_x86_elf_size_dynamic_sections): Check elf.ifunc_resolvers - instead of readonly_dynrelocs_against_ifunc. - * elfxx-x86.h (elf_x86_link_hash_table): Remove - readonly_dynrelocs_against_ifunc. - -2020-06-09 Alan Modra - - * elf64-ppc.c (struct ppc_link_hash_table): Delete - maybe_local_ifunc_resolver field. - (build_global_entry_stubs_and_plt): Set local_ifunc_resolver in - cases where maybe_local_ifunc_resolver was set. - (ppc64_elf_relocate_section): Likewise. - (ppc64_elf_finish_dynamic_sections): Downgrade ifunc with textrel - error to a warning. - -2020-06-08 H.J. Lu - - * elf-bfd.h (elf_link_hash_entry): Add tlsdesc_plt and - tlsdesc_got. - * elf32-arm.c (elf32_arm_link_hash_table): Remove tlsdesc_plt - and dt_tlsdesc_got. - (elf32_arm_size_dynamic_sections): Updated. Clear - root.tlsdesc_plt for DF_BIND_NOW. - (elf32_arm_finish_dynamic_sections): Updated. - (elf32_arm_output_arch_local_syms): Likewise. - * elf32-nds32.c (nds32_elf_size_dynamic_sections): Updated. - Clear root.tlsdesc_plt for DF_BIND_NOW. - (nds32_elf_finish_dynamic_sections): Updated. - * elf32-nds32.h (elf_nds32_link_hash_table): Remove - dt_tlsdesc_plt and dt_tlsdesc_got. - * elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Updated. - * elfnn-aarch64.c (elf_aarch64_link_hash_table): Remove - tlsdesc_plt and dt_tlsdesc_got. - (elfNN_aarch64_allocate_dynrelocs): Updated. - (elfNN_aarch64_finish_dynamic_sections): Likewise. - (elfNN_aarch64_size_dynamic_sections): Updated. Clear - root.tlsdesc_plt for DF_BIND_NOW. Don't check DF_BIND_NOW - twice. - * elfxx-x86.c (elf_x86_allocate_dynrelocs): Updated. - (_bfd_x86_elf_size_dynamic_sections): Likewise. - (_bfd_x86_elf_finish_dynamic_sections): Likewise. - * elfxx-x86.h (elf_x86_link_hash_table): Remove tlsdesc_plt and - tlsdesc_got. - -2020-06-07 H.J. Lu - - * elf32-tic6x.c (elf32_bed): Defined the default to - elf32_tic6x_bed. - -2020-06-07 H.J. Lu - - * elf64-hppa.c (elf64_hppa_link_hash_table): Remove plt_sec and - plt_rel_sec. - (elf64_hppa_check_relocs): Replace plt_sec/plt_rel_sec with - root.splt/root.srelplt. - (elf64_hppa_create_dynamic_sections): Likewise. - (elf64_hppa_size_dynamic_sections): Likewise. - (elf64_hppa_finish_dynamic_symbol): Likewise. - (elf_hppa_final_link): Likewise. - (elf_hppa_final_link_relocate): Likewise. - -2020-06-06 H.J. Lu - - * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Updated. - * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove - is_vxworks. - -2020-06-06 H.J. Lu - - * elf-bfd.h (elf_target_os): New. - (elf_link_hash_table): Add target_os. - (elf_backend_data): Add target_os. - * elf32-arm.c (elf32_arm_link_hash_table): Remove vxworks_p, - symbian_p and nacl_p. - (create_got_section): Updated. - (elf32_arm_create_dynamic_sections): Likewise. - (arm_type_of_stub): Likewise. - (elf32_arm_create_or_find_stub_sec): Likewise. - (elf32_arm_allocate_plt_entry): Likewise. - (elf32_arm_populate_plt_entry): Likewise. - (elf32_arm_final_link_relocate): Likewise. - (elf32_arm_check_relocs): Likewise. - (allocate_dynrelocs_for_symbol): Likewise. - (elf32_arm_finish_dynamic_symbol): Likewise. - (elf32_arm_finish_dynamic_sections): Likewise. - (elf32_arm_output_plt_map_1): Likewise. - (elf32_arm_output_arch_local_syms): Likewise. - (elf32_arm_add_symbol_hook): Likewise. - (elf32_arm_nacl_link_hash_table_create): Likewise. - (elf32_arm_vxworks_link_hash_table_create): Likewise. - (elf32_arm_symbian_link_hash_table_create): Likewise. - (ELF_TARGET_OS): New. - * elf32-i386.c (elf_i386_arch_bed): Removed. - (elf_backend_arch_data): Likewise. - (elf_i386_solaris_arch_bed): Likewise. - (elf_i386_nacl_arch_bed): Likewise. - (elf_i386_vxworks_arch_bed): Likewise. - (elf_i386_relocate_section): Updated. - (elf_i386_finish_dynamic_sections): Likewise. - (elf_i386_get_synthetic_symtab): Likewise. - (elf_i386_link_setup_gnu_properties): Likewise. - (ELF_TARGET_OS): New. - * elf32-mips.c (ELF_TARGET_OS): New. - * elf32-ppc.c (ppc_elf_link_hash_table): Remove is_vxworks. - (ppc_elf_create_got): Updated. - (ppc_elf_create_dynamic_sections): Likewise. - (ppc_elf_check_relocs): Likewise. - (ppc_elf_adjust_dynamic_symbol): Likewise. - (ppc_elf_size_dynamic_sections): Likewise. - (ppc_elf_relocate_section): Likewise. - (ppc_elf_finish_dynamic_sections): Likewise. - (ppc_elf_vxworks_link_hash_table_create): Likewise. - (ELF_TARGET_OS): New. - * elf32-sh.c (elf_sh_link_hash_table): Remove vxworks_p. - (sh_elf_link_hash_table_create): Updated. - (sh_elf_create_dynamic_sections): Likewise. - (allocate_dynrelocs): Likewise. - (sh_elf_size_dynamic_sections): Likewise. - (sh_elf_relocate_section): Likewise. - (sh_elf_finish_dynamic_symbol): Likewise. - (sh_elf_finish_dynamic_sections): Likewise. - (ELF_TARGET_OS): New. - * elf32-sparc.c (elf32_sparc_vxworks_link_hash_table_create): - Removed. - (bfd_elf32_bfd_link_hash_table_create): Likewise. - (ELF_TARGET_OS): New. - * elf64-x86-64.c (elf_x86_64_arch_bed): Removed. - (elf_x86_64_solaris_arch_bed): Likewise. - (elf_x86_64_nacl_arch_bed): Likewise. - (elf_x86_64_finish_dynamic_sections): Updated. - (elf_x86_64_get_synthetic_symtab): Likewise. - (elf_x86_64_link_setup_gnu_properties): Likewise. - (ELF_TARGET_OS): New. - * elflink.c (_bfd_elf_link_hash_table_init): Initialize - target_o. - * elfxx-mips.c (mips_elf_link_hash_table): Remove is_vxworks. - (MIPS_ELF_REL_DYN_NAME): Updated. - (ELF_MIPS_GP_OFFSET): Likewise. - (mips_elf_create_local_got_entry): Likewise. - (mips_elf_allocate_dynamic_relocations): Likewise. - (mips_elf_count_got_symbols): Likewise. - (is_gott_symbol): Likewise. - (mips_elf_calculate_relocation): Likewise. - (mips_elf_create_dynamic_relocation): Likewise. - (_bfd_mips_elf_check_relocs): Likewise. - (allocate_dynrelocs): Likewise. - (_bfd_mips_elf_adjust_dynamic_symbol): Likewise. - (mips_elf_lay_out_got): Likewise. - (mips_elf_set_plt_sym_value): Likewise. - (_bfd_mips_elf_size_dynamic_sections): Likewise. - (_bfd_mips_elf_finish_dynamic_symbol): Likewise. - (_bfd_mips_elf_finish_dynamic_sections): Likewise. - (_bfd_mips_elf_final_link): Likewise. - (_bfd_mips_init_file_header): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_create_dynamic_sections): - Likewise. - (allocate_dynrelocs): Likewise. - (_bfd_sparc_elf_size_dynamic_sections): Likewise. - (_bfd_sparc_elf_relocate_section): Likewise. - (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. - (sparc_finish_dyn): Likewise. - (_bfd_sparc_elf_finish_dynamic_sections): Likewise. - * elfxx-target.h (ELF_TARGET_OS): New. - (elfNN_bed): Add ELF_TARGET_OS. - * elfxx-x86.c (elf_x86_allocate_dynrelocs): Updated. - (_bfd_x86_elf_link_hash_table_create): Likewise. - (_bfd_x86_elf_size_dynamic_sections): Likewise. - (_bfd_x86_elf_finish_dynamic_sections): Likewise. - (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. - (_bfd_x86_elf_link_setup_gnu_properties): Likewise. - * elfxx-x86.h (elf_x86_target_os): Removed. - (elf_x86_backend_data): Likewise. - (get_elf_x86_backend_data): Likewise. - (elf_x86_link_hash_table): Remove target_os. - -2020-06-06 Alan Modra - - * reloc.c: Rename - BFD_RELOC_PPC64_GOT_TLSGD34 to BFD_RELOC_PPC64_GOT_TLSGD_PCREL34, - BFD_RELOC_PPC64_GOT_TLSLD34 to BFD_RELOC_PPC64_GOT_TLSLD_PCREL34, - BFD_RELOC_PPC64_GOT_TPREL34 to BFD_RELOC_PPC64_GOT_TPREL_PCREL34, - BFD_RELOC_PPC64_GOT_DTPREL34 to BFD_RELOC_PPC64_GOT_DTPREL_PCREL34. - * elf64-ppc.c: Update throughout for reloc renaming. - (ppc64_elf_reloc_name_lookup): Handle old reloc names. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - -2020-06-05 H.J. Lu - - PR ld/26080 - * elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC - section. - -2020-06-05 Nick Clifton - - * pdp11.c (aout_link_add_symbols): Fix use before initialisation - bug. - -2020-06-05 Nelson Chu - - * elfnn-riscv.c (riscv_merge_attributes): Add new boolean - priv_may_conflict, in_priv_zero and out_priv_zero to decide - whether the object can be linked according to it's priv - attributes. The object without any priv spec attributes can - be linked with others. If the first input object doesn't contain - any priv attributes, then we need to copy the setting from the - next input one. Also report more detailed error messages to user. - -2020-06-04 Stephen Casner - - Extend pdp11-aout symbol table format to accommodate .stab - symbols and implement correct handling of them. - - * pdp11.c (pdp11_external_nlist): Repurposed e_unused to e_desc. - (N_STAB, is_stab): Needed new function is_stab to disambiguate - normal vs. .stab symbol table type values, replacing N_STAB mask. - (translate_from_native_sym_flags): Determine correct section for - different .stab types. - (translate_to_native_sym_flags): Leave .stab types intact. - (translate_symbol_table): Error if symbol indicates overlay; - store desc field from .stab symbols. - (write_syms): Output desc field with symbol. - (aout_link_check_ar_symbols): Skip .stab symbols. - (aout_link_add_symbols): Correctly distinguish .stab symbols. - (aout_link_write_other_symbol): Write 0 for desk and ovly fields. - (aout_link_write_symbols): Write 0 for desk and ovly fields; - correctly distinguish .stab symbols and select calculate their - section and value; and copy desc and ovly fields from input symbol - to output symbol. - -2020-06-04 Stephen Casner - - * aoutx.h (translate_symbol_table): Comment had external and - internal swapped. - * pdp11.c (translate_symbol_table): Likewise. - -2020-06-04 H.J. Lu - - * elfxx-x86.h (elf_x86_link_hash_table): Remove target_id. - (is_x86_elf): Check elf.hash_table_id instead of target_id. - * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Updated. - -2020-06-04 H.J. Lu - - PR ld/26080 - * elf-m10300.c (mn10300_elf_relocate_section): Resolve relocation - in debug section against symbol defined in shared library to 0. - * elf32-i386.c (elf_i386_check_relocs): Remove SEC_ALLOC check. - * elf32-lm32.c (lm32_elf_check_relocs): Likewise. - * elf32-m32r.c (m32r_elf_check_relocs): Likewise. - * elf32-nds32.c (nds32_elf_check_relocs): Likewise. - * elf32-nios2.c (nios2_elf32_check_relocs): Likewise. - * elf32-or1k.c (or1k_elf_check_relocs): Likewise. - * elf32-ppc.c (ppc_elf_check_relocs): Likewise. - * elf32-sh.c (sh_elf_check_relocs): Likewise. - * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise. - * elf64-alpha.c (elf64_alpha_check_relocs): Likewise. - * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. - * elf32-vax.c (elf_vax_check_relocs): Set non_got_ref for non-GOT - reference. - (elf_vax_adjust_dynamic_symbol): Generate a copy reloc only if - there is non-GOT reference. - * elflink.c (_bfd_elf_link_check_relocs): Skip non-loaded, - non-alloced sections. - -2020-06-03 Stephen Casner - - Copy several years of fixes from bfd/aoutx.h to bfd/pdp11.c. - - * pdp11.c (some_aout_object_p): 4c1534c7a2a - Don't set EXEC_P for - files with relocs. - (aout_get_external_symbols): 6b8f0fd579d - Return if count is zero. - 0301ce1486b PR 22306 - Handle stringsize of zero, and error for any - other size that doesn't qcover the header word. - bf82069dce1 PR 23056 - Allocate an extra byte at the end of the - string table, and zero it. - (translate_symbol_table): 0d329c0a83a PR 22887 - Print an error - message and set bfd_error on finding an invalid name string offset. - (add_to_stringtab): INLINE -> inline - (pdp11_aout_swap_reloc_in): 116acb2c268 PR 22887 - Correct r_index - bound check. - (squirt_out_relocs): e2996cc315d PR 20921 - Check for and report - any relocs that could not be recognised. - 92744f05809 PR 20929 - Check for relocs without an associated symbol. - (find_nearest_line): 808346fcfcf PR 23055 - Check that the symbol - name exists and is long enough, before attempting to see if it is - for a .o file. - c3864421222 - Correct case for N_SO being the last symbol. - 50455f1ab29 PR 20891 - Handle the case where the main file name - and the directory name are both empty. - e82ab856bb4 PR 20892 - Handle the case where function name is empty. - (aout_link_add_symbols): e517df3dbf7 PR 19629 - Check for out of - range string table offsets. - 531336e3a0b PR 20909 - Fix off-by-one error in check for an - illegal string offset. - (aout_link_includes_newfunc): Add comment. - (pdp11_aout_link_input_section): ad756e3f9e6 - Return with an error - on unexpected relocation type rather than ASSERT. - -2020-06-03 H.J. Lu - - PR ld/26066 - * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Call - _bfd_elf_maybe_set_textrel to set DF_TEXTREL. - -2020-06-03 H.J. Lu - - PR ld/26066 - * elf32-nios2.c (nios2_elf32_check_relocs): Skip non-loaded, - non-alloced sections. - -2020-06-03 H.J. Lu - - * elf32-frv.c (elf32_frv_relocate_section): Don't generate - dynamic relocations for non SEC_ALLOC sections. - -2020-06-03 Gunther Nikl - - * aout64.c (BMAGIC, QMAGIC): Do not define. - * aoutx.h (N_IS_BMAGIC, N_SET_QMAGIC): New defines. - (NAME (aout, some_aout_object_p)): Use N_IS_QMAGIC and N_IS_BMAGIC - to check the file format. - (adjust_z_magic): Use N_SET_QMAGIC to set file format. - * i386aout.c (NO_WRITE_HEADER_KLUDGE): Delete define. - * libaout.h (NO_WRITE_HEADER_KLUDGE): Do not define. - -2020-06-03 H.J. Lu - - * elf32-arc.c (elf_arc_relocate_section): Don't generate dynamic - relocations for non SEC_ALLOC sections. - -2020-06-03 H.J. Lu - - * elf-bfd.h (_bfd_elf_maybe_set_textrel): New - * elf32-arm.c (maybe_set_textrel): Removed. - (elf32_arm_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-csky.c (maybe_set_textrel): Removed. - (csky_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-hppa.c (maybe_set_textrel): Removed. - (elf32_hppa_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-lm32.c (maybe_set_textrel): Removed. - (lm32_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-m32r.c (maybe_set_textrel): Removed. - (m32r_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-metag.c (maybe_set_textrel): Removed. - (elf_metag_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-nds32.c (maybe_set_textrel): Removed. - (nds32_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-or1k.c (maybe_set_textrel): Removed. - (or1k_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-ppc.c (maybe_set_textrel): Removed. - (ppc_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-s390.c (maybe_set_textrel): Removed. - (elf_s390_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-sh.c (maybe_set_textrel): Removed. - (sh_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-tic6x.c (maybe_set_textrel): Removed. - (elf32_tic6x_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf32-tilepro.c (maybe_set_textrel): Removed. - (tilepro_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf64-ppc.c (maybe_set_textrel): Removed. - (ppc64_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elf64-s390.c (maybe_set_textrel): Removed. - (elf_s390_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elfnn-aarch64.c (maybe_set_textrel): Removed. - (elfNN_aarch64_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elfnn-riscv.c (maybe_set_textrel): Removed. - (riscv_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elfxx-sparc.c (maybe_set_textrel): Removed. - (_bfd_sparc_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elfxx-tilegx.c (maybe_set_textrel): Removed. - (tilegx_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elfxx-x86.c (maybe_set_textrel): Removed. - (_bfd_x86_elf_size_dynamic_sections): Replace maybe_set_textrel - with _bfd_elf_maybe_set_textrel. - * elflink.c (_bfd_elf_maybe_set_textrel): New. - -2020-06-03 H.J. Lu - - PR ld/26067 - * elf32-arm.c (elf32_arm_copy_indirect_symbol): Don't copy - dyn_relocs. - * elf32-csky.c (csky_elf_copy_indirect_symbol): Likewise. - * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise. - * elf32-metag.c (elf_metag_copy_indirect_symbol): Likewise. - * elf32-microblaze.c (microblaze_elf_copy_indirect_symbol): - Likewise. - * elf32-nds32.c (nds32_elf_copy_indirect_symbol): Likewise. - * elf32-nios2.c (nios2_elf32_copy_indirect_symbol): Likewise. - * elf32-or1k.c (or1k_elf_copy_indirect_symbol): Likewise. - * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise. - * elf32-sh.c (sh_elf_copy_indirect_symbol): Likewise. - * elf32-tilepro.c (tilepro_elf_copy_indirect_symbol): Likewise. - * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_copy_indirect_symbol): Likewise. - * elfnn-riscv.c (riscv_elf_copy_indirect_symbol): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_copy_indirect_symbol): Likewise. - * elfxx-tilegx.c (tilegx_elf_copy_indirect_symbol): Likewise. - * elfxx-x86.c (_bfd_x86_elf_copy_indirect_symbol): Likewise. - * elf32-lm32.c (lm32_elf_copy_indirect_symbol): Removed. - (elf_backend_copy_indirect_symbol): Likewise. - * elf32-m32r.c (m32r_elf_copy_indirect_symbol): Removed. - (elf_backend_copy_indirect_symbol): Likewise. - * elflink.c (_bfd_elf_link_hash_copy_indirect): Copy dyn_relocs. - -2020-06-03 H.J. Lu - - PR ld/26067 - * elf-bfd.h (_bfd_elf_readonly_dynrelocs): New. - * elf32-arm.c (readonly_dynrelocs): Removed. - (maybe_set_textrel): Replace readonly_dynrelocs with - _bfd_elf_readonly_dynrelocs. - * elf32-csky.c (readonly_dynrelocs): Removed. - (maybe_set_textrel): Replace readonly_dynrelocs with - _bfd_elf_readonly_dynrelocs. - * elf32-hppa.c(readonly_dynrelocs): Removed. - (alias_readonly_dynrelocs): Replace readonly_dynrelocs with - _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elf32-lm32.c (readonly_dynrelocs): Removed. - (lm32_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elf32-m32r.c (readonly_dynrelocs): Removed. - (m32r_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elf32-metag.c (readonly_dynrelocs): Removed. - (elf_metag_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elf32-microblaze.c (readonly_dynrelocs): Removed. - (microblaze_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - * elf32-nds32.c (readonly_dynrelocs): Removed. - (nds32_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elf32-or1k.c (readonly_dynrelocs): Removed. - (or1k_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - * elf32-ppc.c (readonly_dynrelocs): Removed. - (alias_readonly_dynrelocs): Replace readonly_dynrelocs with - _bfd_elf_readonly_dynrelocs. - (ppc_elf_adjust_dynamic_symbol): Likewise. - (maybe_set_textrel): Likewise. - * elf32-s390.c (readonly_dynrelocs): Removed. - (elf_s390_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elf32-sh.c (readonly_dynrelocs): Removed. - (sh_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs with - _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elf32-tic6x.c (readonly_dynrelocs): Removed. - (maybe_set_textrel): Replace readonly_dynrelocs with - _bfd_elf_readonly_dynrelocs. - * elf32-tilepro.c (readonly_dynrelocs): Removed. - (tilepro_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elf64-ppc.c (readonly_dynrelocs): Removed. - (alias_readonly_dynrelocs): Replace readonly_dynrelocs with - _bfd_elf_readonly_dynrelocs. - (ppc64_elf_adjust_dynamic_symbol): Likewise. - (maybe_set_textrel): Likewise. - * elf64-s390.c (readonly_dynrelocs): Removed. - (elf_s390_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elflink.c (_bfd_elf_readonly_dynrelocs): New. - * elfnn-aarch64.c (readonly_dynrelocs): Removed. - (maybe_set_textrel): Replace readonly_dynrelocs with - _bfd_elf_readonly_dynrelocs. - * elfnn-riscv.c (readonly_dynrelocs): Removed. - (riscv_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elfxx-sparc.c (readonly_dynrelocs): Removed. - (_bfd_sparc_elf_adjust_dynamic_symbol): Replace - readonly_dynrelocs with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elfxx-tilegx.c (readonly_dynrelocs): Removed. - (tilegx_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs - with _bfd_elf_readonly_dynrelocs. - (maybe_set_textrel): Likewise. - * elfxx-x86.c (readonly_dynrelocs): Removed. - (maybe_set_textrel): Replace readonly_dynrelocs with - _bfd_elf_readonly_dynrelocs. - (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. - -2020-06-03 H.J. Lu - - * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Silence - -fsanitize=undefined. - -2020-06-03 Alan Modra - - PR 26069 - PR 18758 - * peicode.h (pe_ILF_make_a_section): Align data for compilers - other than gcc. - (pe_ILF_build_a_bfd): Likewise. - -2020-06-03 Alan Modra - - PR 26069 - * elf.c (_bfd_elf_close_and_cleanup): Free elf_shstrtab for - core files as well as objects. - -2020-06-01 H.J. Lu - - PR ld/26067 - * elf-bfd.h (elf_link_hash_entry): Add dyn_relocs after size. - * elf-s390-common.c (s390_elf_allocate_ifunc_dyn_relocs): - Updated. - * elf32-arc.c (elf_arc_link_hash_entry): Remove dyn_relocs. - (elf_arc_link_hash_newfunc): Updated. - * elf32-arm.c (elf32_arm_link_hash_entry): Remove dyn_relocs. - (elf32_arm_link_hash_newfunc): Updated. - (elf32_arm_copy_indirect_symbol): Likewise. - (elf32_arm_check_relocs): Likewise. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs_for_symbol): Likewise. - * elf32-csky.c (csky_elf_link_hash_entry): Remove dyn_relocs. - (csky_elf_link_hash_newfunc): Updated. - (csky_allocate_dynrelocs): Likewise. - (readonly_dynrelocs): Likewise. - (csky_elf_copy_indirect_symbol): Likewise. - * elf32-hppa.c (elf32_hppa_link_hash_entry): Remove dyn_relocs. - (hppa_link_hash_newfunc): Updated. - (elf32_hppa_copy_indirect_symbol): Likewise. - (elf32_hppa_hide_symbol): Likewise. - (elf32_hppa_adjust_dynamic_symbol): Likewise. - (allocate_dynrelocs): Likewise. - (elf32_hppa_relocate_section): Likewise. - * elf32-i386.c (elf_i386_check_relocs): Likewise. - * elf32-lm32.c (elf_lm32_link_hash_entry): Removed. - (lm32_elf_link_hash_newfunc): Likewise. - (lm32_elf_link_hash_table_create): Updated. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - (lm32_elf_copy_indirect_symbol): Likewise. - * elf32-m32r.c (elf_m32r_link_hash_entry): Removed. - (m32r_elf_link_hash_newfunc): Likewise. - (m32r_elf_link_hash_table_create): Updated. - (m32r_elf_copy_indirect_symbol): Likewise. - (allocate_dynrelocs): Likewise. - * elf32-metag.c (elf_metag_link_hash_entry): Remove dyn_relocs. - (metag_link_hash_newfunc): Updated. - (elf_metag_copy_indirect_symbol): Likewise. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - * elf32-microblaze.c (elf32_mb_link_hash_entry): Remove - dyn_relocs. - (link_hash_newfunc): Updated. - (microblaze_elf_check_relocs): Likewise. - (microblaze_elf_copy_indirect_symbol): Likewise. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - * elf32-nds32.c (elf_nds32_link_hash_entry): Remove dyn_relocs. - (nds32_elf_link_hash_newfunc): Updated. - (nds32_elf_copy_indirect_symbol): Likewise. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - (nds32_elf_check_relocs): Likewise. - * elf32-nios2.c (elf32_nios2_link_hash_entry): Remove dyn_relocs. - (link_hash_newfunc): Updated. - (nios2_elf32_copy_indirect_symbol): Likewise. - (nios2_elf32_check_relocs): Likewise. - (allocate_dynrelocs): Likewise. - * elf32-or1k.c (elf_or1k_link_hash_entry): Remove dyn_relocs. - (or1k_elf_link_hash_newfunc): Updated. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - (or1k_elf_copy_indirect_symbol): Likewise. - * elf32-ppc.c (ppc_elf_link_hash_entry): Remove dyn_relocs. - (ppc_elf_link_hash_newfunc): Updated. - (ppc_elf_copy_indirect_symbol): Likewise. - (ppc_elf_check_relocs): Likewise. - (readonly_dynrelocs): Likewise. - (ppc_elf_adjust_dynamic_symbol): Likewise. - (allocate_dynrelocs): Likewise. - (ppc_elf_relocate_section): Likewise. - * elf32-s390.c (elf_s390_link_hash_entry): Remove dyn_relocs. - (link_hash_newfunc): Updated. - (elf_s390_copy_indirect_symbol): Likewise. - (readonly_dynrelocs): Likewise. - (elf_s390_adjust_dynamic_symbol): Likewise. - (allocate_dynrelocs): Likewise. - * elf32-sh.c (elf_sh_link_hash_entry): Remove dyn_relocs. - (sh_elf_link_hash_newfunc): Updated. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - (sh_elf_copy_indirect_symbol): Likewise. - (sh_elf_check_relocs): Likewise. - * elf32-tic6x.c (elf32_tic6x_link_hash_entry): Removed. - (elf32_tic6x_link_hash_newfunc): Likewise. - (elf32_tic6x_link_hash_table_create): Updated. - (readonly_dynrelocs): Likewise. - (elf32_tic6x_check_relocs): Likewise. - (elf32_tic6x_allocate_dynrelocs): Likewise. - * elf32-tilepro.c (tilepro_elf_link_hash_entry): Remove - dyn_relocs. - (link_hash_newfunc): Updated. - (tilepro_elf_copy_indirect_symbol): Likewise. - (tilepro_elf_check_relocs): Likewise. - (allocate_dynrelocs): Likewise. - * elf64-ppc.c (ppc_link_hash_entry): Remove dyn_relocs. - (ppc64_elf_copy_indirect_symbol): Updated. - (ppc64_elf_check_relocs): Likewise. - (readonly_dynrelocs): Likewise. - (ppc64_elf_adjust_dynamic_symbol): Likewise. - (dec_dynrel_count): Likewise. - (allocate_dynrelocs): Likewise. - (ppc64_elf_relocate_section): Likewise. - * elf64-s390.c (elf_s390_link_hash_entry): Remove dyn_relocs. - (link_hash_newfunc): Updated. - (elf_s390_copy_indirect_symbol): Likewise. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - * elfnn-aarch64.c (elf_aarch64_link_hash_entry): Remove - dyn_relocs. - (elfNN_aarch64_link_hash_newfunc): Updated. - (elfNN_aarch64_copy_indirect_symbol): Likewise. - (readonly_dynrelocs): Likewise. - (need_copy_relocation_p): Likewise. - (elfNN_aarch64_allocate_dynrelocs): Likewise. - (elfNN_aarch64_allocate_ifunc_dynrelocs): Likewise. - * elfnn-riscv.c (riscv_elf_link_hash_entry): Remove dyn_relocs. - (link_hash_newfunc): Updated. - (riscv_elf_copy_indirect_symbol): Likewise. - (riscv_elf_check_relocs): Likewise. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_link_hash_entry): Remove - dyn_relocs. - (link_hash_newfunc): Updated. - (_bfd_sparc_elf_copy_indirect_symbol): Likewise. - (_bfd_sparc_elf_check_relocs): Likewise. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - * elfxx-tilegx.c (tilegx_elf_link_hash_entry): Remove dyn_relocs. - (link_hash_newfunc): Updated. - (tilegx_elf_copy_indirect_symbol): Likewise. - (tilegx_elf_check_relocs): Likewise. - (readonly_dynrelocs): Likewise. - (allocate_dynrelocs): Likewise. - * elfxx-x86.c (elf_x86_allocate_dynrelocs): Likewise. - (readonly_dynrelocs): Likewise. - (_bfd_x86_elf_copy_indirect_symbol): Likewise. - * elfxx-x86.h (elf_x86_link_hash_entry): Remove dyn_relocs. - -2020-06-01 Alan Modra - - * vms-alpha.c (_bfd_vms_slurp_etir): Check bound for the current - command against cmd_length, not the end of record. For - ETIR__C_STO_IMMR check size against cmd_length, mask repeat count - to 32-bits and break out on zero size. Add ETIR__C_STC_LP_PSB - cmd_length test. - -2020-05-28 David Faust - - * elf64-bpf.c (bpf_elf_relocate_section): Fix handling of - R_BPF_INSN_{32,64} relocations. - -2020-05-28 Stephen Casner - - * pdp11.c: Implement BRD_RELOC_32 to relocate the low 16 bits of - addreses in .long (used in testsuites) and .stab values. - -2020-05-27 H.J. Lu - - PR ld/22909 - * elflink.c (bfd_elf_final_link): Use bfd_link_textrel_check. - Check bfd_link_dll when issue a DT_TEXTREL warning. - * elfxx-x86.c (maybe_set_textrel): Likewise. - (_bfd_x86_elf_size_dynamic_sections): Likewise. - -2020-05-26 Nick Clifton - - * plugin.c (try_load_plugin): Extend error message when a plugin - fails to open. - -2020-05-23 Alan Modra - - * bfdio.c (bfd_get_file_size): Don't segfault on NULL arch_header. - -2020-05-22 Alan Modra - - PR 25882 - * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Don't init FP - attributes from shared libraries, and do not return an error if - they don't match. - -2020-05-21 Alan Modra - - PR 25993 - * opncls.c (_bfd_free_cached_info): Keep a copy of the bfd - filename. - (_bfd_delete_bfd): Free the copy. - (_bfd_new_bfd): Free nbfd->memory on error. - -2020-05-21 Alan Modra - - * aoutx.h: Replace "if (x) free (x)" with "free (x)" throughout. - * archive.c, * bfd.c, * bfdio.c, * coff-alpha.c, * coff-ppc.c, - * coff-sh.c, * coff-stgo32.c, * coffcode.h, * coffgen.c, - * cofflink.c, * cpu-arm.c, * doc/chew.c, * dwarf2.c, * ecoff.c, - * ecofflink.c, * elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c, - * elf-strtab.c, * elf.c, * elf32-arc.c, * elf32-arm.c, - * elf32-avr.c, * elf32-bfin.c, * elf32-cr16.c, * elf32-crx.c, - * elf32-epiphany.c, * elf32-ft32.c, * elf32-h8300.c, - * elf32-ip2k.c, * elf32-m32c.c, * elf32-m68hc11.c, - * elf32-m68k.c, * elf32-microblaze.c, * elf32-msp430.c, - * elf32-nds32.c, * elf32-nios2.c, * elf32-ppc.c, * elf32-pru.c, - * elf32-rl78.c, * elf32-rx.c, * elf32-sh.c, * elf32-spu.c, - * elf32-v850.c, * elf32-xtensa.c, * elf64-alpha.c, - * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mips.c - * elf64-mmix.c, * elf64-ppc.c, * elf64-sparc.c, * elfcode.h, - * elflink.c, * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c, - * elfxx-x86.c, * format.c, * ihex.c, * libbfd.c, * linker.c, - * mmo.c, * opncls.c, * pdp11.c, * peXXigen.c, * pef.c, - * peicode.h, * simple.c, * som.c, * srec.c, * stabs.c, * syms.c, - * targets.c, * vms-lib.c, * xcofflink.c, * xtensa-isa.c: Likewise. - -2020-05-20 Nelson Chu - - * elfxx-riscv.h (riscv_parse_subset_t): Add new callback function - get_default_version. It is used to find the default version for - the specific extension. - * elfxx-riscv.c (riscv_parsing_subset_version): Remove the parameters - default_major_version and default_minor_version. Add new bfd_boolean - parameter *use_default_version. Set it to TRUE if we need to call - the callback rps->get_default_version to find the default version. - (riscv_parse_std_ext): Call rps->get_default_version if we fail to find - the default version in riscv_parsing_subset_version, and then call - riscv_add_subset to add the subset into subset list. - (riscv_parse_prefixed_ext): Likewise. - (riscv_std_z_ext_strtab): Support Zicsr extensions. - * elfnn-riscv.c (riscv_merge_std_ext): Use strcasecmp to compare the - strings rather than characters. - riscv_merge_arch_attr_info): The callback function get_default_version - is only needed for assembler, so set it to NULL int the linker. - * elfxx-riscv.c (riscv_estimate_digit): Remove the static. - * elfxx-riscv.h: Updated. - -2020-05-20 Alan Modra - - PR 25993 - * archive.c (_bfd_get_elt_at_filepos): Don't strdup filename, - use bfd_set_filename. - * elfcode.h (_bfd_elf_bfd_from_remote_memory): Likewise. - * mach-o.c (bfd_mach_o_fat_member_init): Likewise. - * opncls.c (bfd_fopen, bfd_openstreamr, bfd_openr_iovec, bfd_openw), - (bfd_create): Likewise. - (_bfd_delete_bfd): Don't free filename. - (bfd_set_filename): Copy filename param to bfd_alloc'd memory, - return pointer to the copy or NULL on alloc fail. - * vms-lib.c (_bfd_vms_lib_get_module): Free newname and test - result of bfd_set_filename. - * bfd-in2.h: Regenerate. - -2020-05-20 Alan Modra - - PR 26011 - * elf.c (_bfd_elf_get_reloc_upper_bound): Sanity check reloc - section size against file size. - (_bfd_elf_get_dynamic_reloc_upper_bound): Likewise. - -2020-05-19 Gunther Nikl - - PR 26005 - * elf.c (bfd_section_from_shdr): Replace bfd_zmalloc with bfd_malloc - and memset when allocating memory for the sections_being_created - array. - -2020-05-19 Stafford Horne - - * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Rename srela - to relgot. - (or1k_elf_relocate_section): Access srelgot via - htab->root.srelgot. Add assertions for srelgot->contents. - Introduce local variable for srelgot to not reuse global - sreloc. - (or1k_elf_relocate_section): Fixup dynamic symbol detection. - (or1k_set_got_and_rela_sizes): New function. - (or1k_initial_exec_offset): New function. - (TLS_GD, TLS_IE, TLS_LD, TLS_LE): Redefine macros as masks. - (or1k_elf_relocate_section): Allow for TLS to handle multiple - model access. - (or1k_elf_check_relocs): Use OR to set TLS access. - (allocate_dynrelocs): Use or1k_set_got_and_rela_sizes to set - sizes. - (or1k_elf_size_dynamic_sections): Use - or1k_set_got_and_rela_sizes to set sizes. - (or1k_elf_relocate_section): Fixup PCREL relocation calculation. - (TCB_SIZE): New macro. - (tpoff): Use TCB_SIZE and alignment to calculate offset. - (allocate_dynrelocs, readonly_dynrelocs, or1k_elf_check_relocs) - (or1k_elf_size_dynamic_sections): Rename p to sec_relocs. - (allocate_dynrelocs): Rename s to splt or sgot based on usage. - (tpoff): Add dynamic boolean argument. - (or1k_elf_relocate_section): Pass dynamic flag to tpoff. - -2020-05-19 Siddhesh Poyarekar - - * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Club - BFD_RELOC_AARCH64_BRANCH19 and BFD_RELOC_AARCH64_TSTBR14 - cases with BFD_RELOC_AARCH64_JUMP26. - (elfNN_aarch64_check_relocs): Likewise. - -2020-05-19 Alan Modra - - * aix5ppc-core.c (xcoff64_core_file_matches_executable_p): Use - bfd_get_filename rather than accessing bfd->filename directly. - * aout-target.h (MY (object_p)): Likewise. - * aoutx.h (aout_find_nearest_line, aout_link_write_symbols): Likewise. - * archive.c (find_nested_archive, _bfd_generic_read_ar_hdr_mag), - (_bfd_construct_extended_name_table, _bfd_bsd44_write_ar_hdr), - (_bfd_archive_bsd44_construct_extended_name_table), - (_bfd_write_archive_contents, _bfd_compute_and_write_armap), - (_bfd_bsd_write_armap): Likewise. - * bfd.c (bfd_errmsg, _bfd_doprnt): Likewise. - * cache.c (bfd_open_file): Likewise. - * ecoff.c (_bfd_ecoff_write_armap): Likewise. - * ecofflink.c (bfd_ecoff_debug_accumulate_other): Likewise. - * elf32-bfin.c (bfinfdpic_relocate_section): Likewise. - * elf32-frv.c (elf32_frv_relocate_section): Likewise. - * elf32-hppa.c (elf32_hppa_final_link): Likewise. - * elf32-nds32.c (nds32_elf_output_symbol_hook), - (patch_tls_desc_to_ie): Likewise. - * elf32-spu.c (sort_bfds, print_one_overlay_section), - (spu_elf_auto_overlay): Likewise. - * elf64-hppa.c (elf_hppa_final_link): Likewise. - * elf64-ia64-vms.c (elf64_ia64_size_dynamic_sections): Likewise. - * elfcore.h (elf_core_file_matches_executable_p): Likewise. - * elflink.c (bfd_elf_size_dynamic_sections), - (elf_link_input_bfd): Likewise. - * linker.c (_bfd_generic_link_output_symbols): Likewise. - * mach-o.c (bfd_mach_o_follow_dsym), - (bfd_mach_o_close_and_cleanup): Likewise. - * opncls.c (_bfd_delete_bfd, _maybe_make_executable), - (find_separate_debug_file, get_build_id_name): Likewise. - * pdp11.c (aout_find_nearest_line, aout_link_write_symbols): Likewise. - * plugin.c (bfd_plugin_open_input): Likewise. - * rs6000-core.c (rs6000coff_core_file_matches_executable_p): Likewise. - * som.c (som_write_armap): Likewise. - * srec.c (srec_write_record, srec_write_symbols): Likewise. - * vms-lib.c (_bfd_vms_lib_get_imagelib_file), - (_bfd_vms_lib_write_archive_contents): Likewise. - * xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise. - -2020-05-19 Alan Modra - - PR 25713 - * bfdio.c (_bfd_real_fopen): Typo fix. - -2020-05-18 Nick Clifton - - PR 26005 - * elf.c (bfd_section_from_shdr): Use bfd_malloc to allocate memory - for the sections_being_created array. - -2020-05-18 Alan Modra - - * ecoff.c (ecoff_slurp_reloc_table): Malloc external_relocs so - they can be freed without also freeing internal_relocs. - -2020-05-18 Jaydeep Chauhan - - PR 25713 - * bfdio.c (_bfd_real_fopen): Convert UNIX style sirectory - separators into DOS style when creating a WIN32 fullpath. - -2020-05-14 Nelson Chu - - * elfnn-riscv.c (elfNN_riscv_mkobject): New function. We need this - to initialize RISC-V tdata. - -2020-05-12 Gunther Nikl - - * aoutx.h (NAME (aout, swap_std_reloc_out)): Reject an unsupported - relocation size. - -2020-05-11 Alan Modra - - * elf64-ppc.c (xlate_pcrel_opt): Handle lxvp and stxvp. - -2020-05-11 Alan Modra - - * elf64-ppc.c: Rename powerxx to power10 throughout. - -2020-05-11 Alan Modra - - PR 25961 - * coffgen.c (coff_get_normalized_symtab): Check that buffer - contains required number of auxents before processing any auxent. - * coffswap.h (coff_swap_aux_in ): Only swap in extended - file name from auxents for PE. - -2020-05-04 Gunther Nikl - - * aout-cris.c (DEFAULT_ARCH): Delete define. - (MY_set_arch_mach): Likewise. - (SET_ARCH_MACH): Use bfd_set_arch_mach with an explicit architecture - of bfd_arch_cris. - (swap_ext_reloc_in): Add casts to r_index extraction. Mask valid bits - of r_type before the shift. - -2020-05-04 Wilco Dijkstra - - PR ld/25665 - * elfnn-aarch64.c (group_sections): Copy implementation from - elf32-arm.c. - -2020-05-01 Alan Modra - - PR 25900 - * elfnn-riscv.c (_bfd_riscv_relax_section): Check root.type before - accessing root.u.def of symbols. Also check root.u.def.section - is non-NULL. Reverse tests so as to make the logic positive. - -2020-05-01 Alan Modra - - PR 25882 - * elf32-tic6x.c (elf32_tic6x_merge_attributes): Don't transfer - Tag_ABI_PIC or Tag_ABI_PID from dynamic objects to the output. - -2020-05-01 Alan Modra - - PR 25882 - * elf32-bfin.c (elf32_bfin_merge_private_bfd_data): Add FIXME. - * elf32-frv.c (frv_elf_merge_private_bfd_data): Likewise. - * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise. - * elf32-nds32.c (nds32_elf_merge_private_bfd_data): Likewise. - * elf32-score.c (s3_elf32_score_merge_private_bfd_data): Likewise. - * elf32-score7.c (s7_elf32_score_merge_private_bfd_data): Likewise. - * elf32-sh.c (sh_elf_merge_private_data): Likewise. - * elf32-tic6x.c (elf32_tic6x_merge_attributes): Likewise. - * elf64-ia64-vms.c (elf64_ia64_merge_private_bfd_data): Likewise. - * elfnn-ia64.c (elfNN_ia64_merge_private_bfd_data): Likewise. - -2020-05-01 Alan Modra - - PR 25882 - * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Ignore e_flags - from shared libraries. - -2020-04-29 Max Filippov - - * elf32-xtensa.c (relax_section): Don't negate diff_value for - XTENSA_NDIFF relocations. Don't add sign bits whe diff_value - equals 0. Report overflow when the result has negative sign but - all significant bits are zero. - -2020-04-29 Gunther Nikl - - * aoutx.h (swap_std_reloc_out): Special case 64 bit relocations. - (aout_link_reloc_link_order): Likewise. Make r_length an unsigned. - -2020-04-28 Alan Modra - - * vms-alpha.c (_bfd_vms_slurp_etir): Correct divide by zero check. - Emit warning message. - -2020-04-27 Tamar Christina - - * coff-i386.c (COFF_WITH_PE_BIGOBJ): New. - * coff-x86_64.c (COFF_WITH_PE_BIGOBJ): New. - * config.bfd (targ_selvecs): Rename x86_64_pe_be_vec - to x86_64_pe_big_vec as it not a big-endian format. - (vec i386_pe_big_vec): New. - * configure.ac: Likewise. - * targets.c: Likewise. - * configure: Regenerate. - * pe-i386.c (TARGET_SYM_BIG, TARGET_NAME_BIG, - COFF_WITH_PE_BIGOBJ): New. - * pe-x86_64.c (TARGET_SYM_BIG, TARGET_NAME_BIG): - New. - (x86_64_pe_be_vec): Moved. - -2020-04-23 Anton Kolesov - - * elf-bfd.h (elfcore_write_arc_v2): Add prototype. - * elf.c (elfcore_grok_arc_v2): New function. - (elfcore_grok_note): Call the new function to handle the corresponding - note. - (elfcore_write_arc_v2): New function. - (elfcore_write_register_note): Call the new function to handle the - corresponding pseudo-sections. - -2020-04-22 Max Filippov - - PR ld/25861 - * bfd-in2.h: Regenerated. - * elf32-xtensa.c (elf_howto_table): New entries for - R_XTENSA_PDIFF{8,16,32} and R_XTENSA_NDIFF{8,16,32}. - (elf_xtensa_reloc_type_lookup, elf_xtensa_do_reloc) - (relax_section): Add cases for R_XTENSA_PDIFF{8,16,32} and - R_XTENSA_NDIFF{8,16,32}. - * libbfd.h (bfd_reloc_code_real_names): Add names for - BFD_RELOC_XTENSA_PDIFF{8,16,32} and - BFD_RELOC_XTENSA_NDIFF{8,16,32}. - * reloc.c: Add documentation for BFD_RELOC_XTENSA_PDIFF{8,16,32} - and BFD_RELOC_XTENSA_NDIFF{8,16,32}. - -2020-04-21 Tamar Christina - - PR binutils/24753 - * compress.c (bfd_get_full_section_contents): Exclude sections with no - content. - -2020-04-21 H.J. Lu - - PR ld/25849 - * elf-bfd.h (elf_backend_data): Add - elf_backend_strip_zero_sized_dynamic_sections. - (_bfd_elf_strip_zero_sized_dynamic_sections): New prototype. - * elf64-alpha.c (elf_backend_strip_zero_sized_dynamic_sections): - New macro. - * elflink.c (_bfd_elf_strip_zero_sized_dynamic_sections): New - function. - * elfxx-target.h (elf_backend_strip_zero_sized_dynamic_sections): - New macro. - (elfNN_bed): Add elf_backend_strip_zero_sized_dynamic_sections. - -2020-04-21 H.J. Lu - - * elf64-alpha.c (alpha_elf_reloc_entry): Replace reltext with - sec. - (elf64_alpha_check_relocs): Set sec instead of reltext. Warn - DT_TEXTREL with -M. - (elf64_alpha_calc_dynrel_sizes): Warn DT_TEXTREL with -M. - -2020-04-21 Nick Clifton - - * po/sr.po: Updated Serbian translation. - -2020-04-21 Alan Modra - - * elf32-sh.c (sh_elf_relocate_section): Remove STO_SH5_ISA32 - processing. - -2020-04-20 Stephen Casner - - * pdp11.c (N_STAB): Modify value to avoid conflict with N_EXT - causing globals from linker script to be treated as debug symbols. - (translate_symbol_table): Don't sign-extend symbol values from 16 - to 64 bits in nm output. - -2020-04-20 Alan Modra - - * elf64-ppc.c (ppc64_elf_size_stubs): Strip relbrlt too. - -2020-04-18 Alan Modra - - * section.c (bfd_is_const_section): Correct test for special - sections. - * bfd-in2.h: Regenerate. - -2020-04-17 Alan Modra - - PR 25842 - * elf.c (_bfd_elf_get_symbol_version_string): Don't segfault on - NULL nodename. - -2020-04-16 Nick Clifton - - PR 25803 - * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Replace an - abort with a more helpful error message. - -2020-04-16 Alan Modra - - PR 25827 - * dwarf2.c (scan_unit_for_symbols): Wrap overlong lines. Don't - strdup(0). - -2020-04-15 Fangrui Song - - PR binutils/24613 - * coff-rs6000.c (xcoff_ppc_relocate_section): Change RM_GENERATE_ERROR - to RM_DIAGNOSE plus a check of warn_unresolved_syms. - * coff64-rs6000.c (xcoff_ppc_relocate_section): Likewise. - * elf-bfd.h (_bfd_elf_large_com_section): Likewise. - * elf32-m32r.c (m32r_elf_relocate_section): Likewise. - * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise. - * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. - * elf32-sh.c (sh_elf_relocate_section): Likewise. - * elf32-spu.c (spu_elf_relocate_section): Likewise. - * elf64-hppa.c (elf64_hppa_relocate_section): Likewise. - * elflink.c (elf_link_output_extsym): Likewise. - * elfxx-mips.c (mips_elf_calculate_relocation): Likewise. - -2020-04-15 Alan Modra - - PR 25823 - * peXXigen.c (_bfd_XXi_swap_sym_in ): Don't use a - pointer into strings that may be freed for section name, always - allocate a new string. - -2020-04-14 Juan Manuel Guerrero - Jan W. Jagersma - - * coff-go32.c (COFF_GO32, IMAGE_SCN_LNK_NRELOC_OVFL) - (coff_SWAP_scnhdr_in, coff_SWAP_scnhdr_out): Define. - (_bfd_go32_swap_scnhdr_in, _bfd_go32_swap_scnhdr_out) - (_bfd_go32_mkobject): New functions. - * coff-stgo32.c (IMAGE_SCN_LNK_NRELOC_OVFL) - (coff_SWAP_scnhdr_in, coff_SWAP_scnhdr_out): Define. - (go32exe_mkobject): Call _bfd_go32_mkobject. - * coffcode.h (COFF_WITH_EXTENDED_RELOC_COUNTER): Define. - (coff_set_alignment_hook): Define function for COFF_GO32_EXE - and COFF_GO32. - (coff_write_relocs): Enable extended reloc counter code if - COFF_WITH_EXTENDED_RELOC_COUNTER is defined. Test for obj_go32. - (coff_write_object_contents): Likewise. Pad section headers - for COFF_GO32 and COFF_GO32EXE. Use bfd_coff_swap_scnhdr_out - instead of coff_swap_scnhdr_out. - * cofflink.c (_bfd_coff_final_link): Test also for obj_go32 to - enable extended reloc counter. - * coffswap.h: (coff_swap_scnhdr_in, coff_swap_scnhdr_out): - Declare with ATTRIBUTE_UNUSED. - * libcoff-in.h: (struct coff_tdata): New field go32. - (obj_go32): Define. - * libcoff.h: Regenerate. - -2020-04-14 Fangrui Song - - PR gas/25768 - * elf.c (assign_section_numbers): Always set .stab sh_entsize to - 12. - -2020-04-14 Stephen Casner - - PR ld/25677 - * pdp11.c: Add implementation of --imagic option. - (adjust_o_magic): Fix objcopy --extract-symbol test. - * libaout.h (enum aout_magic): Add i_magic. - -2020-04-07 Rainer Orth - Nick Clifton - - * elf32-sparc.c (sparc_final_write_processing): Fix whitespace. - <0>: Ignore. - : Error rather than abort. - -2020-04-03 H.J. Lu - - PR ld/25767 - * elf.c (_bfd_elf_fixup_group_sections): Remove zero-sized - relocation section from section group. - -2020-04-02 Jan W. Jagersma - - * bfdio.c (bfd_bread, bfd_tell, bfd_seek, bfd_mmap): Always add - bfd->origin to file offset. - * bfdwin.c (bfd_get_file_window): Likewise. - * bfd.c: Clarify the use of the bfd->origin field. - * bfd-in2.h: Regenerate. - * coff-i386.c: Don't include go32exe.h. Allow overriding - coff_write_object_contents via COFF_WRITE_CONTENTS. - * coff-stgo32.c (go32exe_cleanup, go32exe_mkobject) - (go32exe_write_object_contents): New functions. - (go32exe_temp_stub, go32exe_temp_stub_size): New static globals. - (COFF_WRITE_CONTENTS, GO32EXE_DEFAULT_STUB_SIZE): Define. - (create_go32_stub): Remove check for 2k size limit. Read stub - from go32exe_temp_stub if present. - (go32_stubbed_coff_bfd_copy_private_bfd_data): Allocate and - copy variable-length stub. - (go32_check_format): Read stub to go32exe_temp_stub, set - origin, return go32exe_cleanup. - (adjust_filehdr_in_post, adjust_filehdr_out_pre) - (adjust_filehdr_out_post, adjust_scnhdr_in_post) - (adjust_scnhdr_out_pre, adjust_scnhdr_out_post) - (adjust_aux_in_post, adjust_aux_out_pre, adjust_aux_out_post): - Remove functions and their associated #defines. - * coffcode.h (coff_mkobject_hook): Remove stub copying code. - * libcoff-in.h: (struct coff_tdata): New field stub_size. - Rename field go32stub to stub. - * libcoff.h: Regenerate. - * coff-stgo32.c (go32_check_format): Rename to... - (go32exe_check_format): ...this. - (go32_stubbed_coff_bfd_copy_private_bfd_data): Rename to... - (go32exe_copy_private_bfd_data): ...this. - (stub_bytes): Rename to... - (go32exe_default_stub): ...this. - (create_go32_stub): Rename to... - (go32exe_create_stub): ...this. - * coff-stgo32.c (go32exe_copy_private_bfd_data): Avoid realloc - when possible. - -2020-04-01 H.J. Lu - - PR ld/25749 - PR ld/25754 - * elf32-i386.c (elf_i386_convert_load_reloc): Convert load - relocation to R_386_32 for relocation against non-preemptible - absolute symbol. - (elf_i386_check_relocs): Call _bfd_elf_x86_valid_reloc_p. Don't - allocate dynamic relocation for non-preemptible absolute symbol. - (elf_i386_relocate_section): Pass sec to - GENERATE_DYNAMIC_RELOCATION_P. - * elf64-x86-64.c (R_X86_64_converted_reloc_bit): Moved. - (elf_x86_64_convert_load_reloc): Covert load relocation to - R_X86_64_32S or R_X86_64_32 for relocation against non-preemptible - absolute symbol. Don't convert to R_X86_64_32S nor R_X86_64_32 - for non-preemptible absolute symbol if they overflow. - (elf_x86_64_check_relocs): Call _bfd_elf_x86_valid_reloc_p. Set - tls_type for GOT slot to GOT_ABS for non-preemptible absolute - symbol. Don't allocate dynamic relocation for non-preemptible - absolute symbol. - (elf_x86_64_relocate_section): Don't generate relative relocation - for GOTPCREL relocations aganst local absolute symbol. Pass sec - to GENERATE_DYNAMIC_RELOCATION_P. - * elfxx-x86.c (elf_x86_allocate_dynrelocs): No dynamic relocation - against non-preemptible absolute symbol. - (_bfd_elf_x86_valid_reloc_p): New function. - (_bfd_x86_elf_size_dynamic_sections): No dynamic relocation for - GOT_ABS GOT slot. - * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Add an SEC - argument. Don't generate dynamic relocation against - non-preemptible absolute symbol. - (ABS_SYMBOL_P): New. - (GENERATE_RELATIVE_RELOC_P): Don't generate relative relocation - against non-preemptible absolute symbol. - (GOT_ABS): New. - (R_X86_64_converted_reloc_bit): New. Moved from elf64-x86-64.c. - (_bfd_elf_x86_valid_reloc_p): New. - -2020-04-01 Tamar Christina - - PR ld/16017 - * elf32-arm.c (elf32_arm_populate_plt_entry): Set LSB of the PLT0 - address in the GOT if in thumb only mode. - -2020-04-01 Tamar Christina - - * elf32-arm.c (elf32_thumb2_plt_entry): Fix PC-rel offset. - -2020-04-01 Hans-Peter Nilsson - - * mmo.c (mmo_scan): Create .text section only when needed, not - from the start. - -2020-03-31 Alan Modra - - * coff-alpha.c (alpha_ecoff_get_elt_at_filepos): Correct bfd_bread - return value check. - -2020-03-31 Alan Modra - - * vms-alpha.c (image_write): Check bounds for sections without - contents too. Error on non-zero write to section without - contents. - (_bfd_vms_slurp_etir): Check return of image_write* functions. - -2020-03-31 Alan Modra - - * tekhex.c (pass_over): Check is_eof before reading buffer. - -2020-03-30 Nick Clifton - - PR binutils/pr25662 - * libcoff-in.h (struct pe_tdata): Rename the insert_timestamp - field to timestamp and make it an integer. - * libcoff.h: Regenerate. - * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Test the timestamp - field in the pe_data structure rather than the insert_timestamp - field. - -2020-03-30 Alan Modra - - PR 25745 - * elf64-ppc.c (ppc64_elf_build_stubs): Use asprintf to form - statistics message. - -2020-03-26 Nick Clifton - - * cofflink.c (bfd_coff_get_internal_extra_pe_aouthdr): Delete. - * libbfd-in.h (bfd_coff_get_internal_extra_pe_aouthdr): Remove - prototype. - * libbfd.h: Regenerate. - -2020-03-26 Alan Modra - - * i386msdos.c (msdos_object_p): Catch -1 return from bfd_bread. - -2020-03-26 Alan Modra - - * vms-alpha.c (dst_define_location): Limit size of dst_ptr_offsets - array. - (_bfd_vms_slurp_object_records): Rename "err" to "ok". - -2020-03-25 Nick Clifton - - * cofflink.c (bfd_coff_get_internal_extra_pe_aouthdr): New - function. - * libbfd-in.h (bfd_coff_get_internal_extra_pe_aouthdr): Prototype. - * libbfd.h: Regenerate. - -2020-03-25 Shahab Vahedi - - * elf32-arc.c (PRINT_DEBUG_RELOC_INFO_BEFORE): Use the - correct field name in the output string. - -2020-03-25 Alan Modra - - PR 25662 - * elf.c (assign_file_positions_for_load_sections): Adjust offset - for SHT_NOBITS section if first in segment. - -2020-03-24 H.J. Lu - - PR binutils/25708 - * elf-bfd.h (_bfd_elf_get_symbol_version_name): Renamed to ... - (_bfd_elf_get_symbol_version_string): This. - * elf.c (_bfd_elf_get_symbol_version_name): Renamed to ... - (_bfd_elf_get_symbol_version_string): This. - (bfd_elf_print_symbol): Pass TRUE to - _bfd_elf_get_symbol_version_string. - * libbfd-in.h (_bfd_nosymbols_get_symbol_version_string): Add a - bfd_boolean argument. - * syms.c (_bfd_nosymbols_get_symbol_version_string): Likewise. - * targets.c (_bfd_get_symbol_version_string): Likewise. - (bfd_get_symbol_version_string): Likewise. - * bfd-in2.h: Regenerated. - -2020-03-24 Nick Clifton - Jaydeep Chauhan - - PR 25713 - * bfdio.c (_bfd_real_fopen): Add code to handle long filenames on - Win32 systems. - -2020-03-24 Nick Clifton - - PR 25681 - * elf.c (_bfd_elf_map_sections_to_segments): When looking for a - segment to use for PT_GNU_RELRO, ignore empty sections in a - segment's current list. - -2020-03-24 H.J. Lu - - PR binutils/25717 - * elf-bfd.h (elf_obj_tdata): Change num_group to unsigned int. - -2020-03-24 H.J. Lu - - PR binutils/25708 - * elf-bfd.h (_bfd_elf_get_symbol_version_name): New. - * elf.c (_bfd_elf_get_symbol_version_name): New function. Based - on the previous _bfd_elf_get_symbol_version_string. - (_bfd_elf_get_symbol_version_string): Use it. - -2020-03-24 Alan Modra - - * archive.c (_bfd_generic_read_ar_hdr_mag): Sanity check extended - name size. Use bfd_malloc rather than bfd_zmalloc, clearing just - struct areltdata. - -2020-03-23 Sebastian Huber - - * elflink.c (_bfd_elf_tls_setup): Mention .tdata in comment. - -2020-03-23 Alan Modra - - * ecoff.c (_bfd_ecoff_slurp_armap): Sanity check parsed_size and - symbol count. Allocate an extra byte to ensure name strings - are terminated. Sanity check name offsets. Release memory on - error return. - -2020-03-23 Alan Modra - - * i386msdos.c (msdos_object_p): Don't access e_lfanew when that - field hasn't been read. Remove unnecessary casts. - -2020-03-22 Alan Modra - - * coff64-rs6000.c (xcoff64_slurp_armap): Ensure size is large - enough to read number of symbols. - -2020-03-20 H.J. Lu - - * configure.ac (HAVE_EXECUTABLE_SUFFIX): Removed. - (EXECUTABLE_SUFFIX): Likewise. - * config.in: Regenerated. - * configure: Likewise. - * plugin.c (bfd_plugin_close_and_cleanup): Defined as - _bfd_generic_close_and_cleanup. - (plugin_list_entry): Remove resolution_file, resolution_option, - real_bfd, real_nsyms, real_syms, lto_nsyms, lto_syms, gcc, - lto_wrapper, gcc_env and initialized, - (need_lto_wrapper_p): Removed. - (get_lto_wrapper): Likewise. - (setup_lto_wrapper_env): Likewise. - (register_all_symbols_read): Likewise. - (egister_cleanup): Likewise. - (get_symbols): Likewise. - (add_input_file): Likewise. - (bfd_plugin_set_program_name): Remove need_lto_wrapper. - (add_symbols): Updated. - (try_claim): Likewise. - (try_load_plugin): Likewise. - (bfd_plugin_canonicalize_symtab): Likewise. - * plugin.h (bfd_plugin_set_program_name): Remove int argument. - (plugin_data_struct): Remove real_bfd, real_nsyms and real_syms. - -2020-03-19 H.J. Lu - - PR binutils/25640 - * plugin.c (plugin_list_entry): Add has_symbol_type. - (add_symbols_v2): New function. - (bfd_plugin_open_input): Don't invoke LTO wrapper if LTO plugin - provides symbol type. - (try_load_plugin): Add LDPT_ADD_SYMBOLS_V2. - (bfd_plugin_canonicalize_symtab): Use LTO plugin symbol type if - available. - -2020-03-20 Alan Modra - - * coff-rs6000.c (_bfd_xcoff_slurp_armap): Ensure size is large - enough to read number of symbols. - -2020-03-20 Alan Modra - - * elf.c (_bfd_elf_setup_sections): Don't test known non-NULL - backend functions for NULL before calling. - (copy_special_section_fields, _bfd_elf_copy_private_bfd_data), - (bfd_section_from_shdr, assign_section_numbers): Likewise. - * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): Likewise. - * elfnn-ia64.c (ignore_errors): New function. - (elf_backend_link_order_error_handler): Redefine as ignore_errors. - -2020-03-19 Nick Clifton - - PR 25676 - * dwarf2.c (struct varinfo): Add unit_offset field to record the - location of the varinfo in the unit's debug info data. Change the - type of the stack field to a boolean. - (lookup_var_by_offset): New function. Returns the varinfo - structure for the variable described at the given offset in the - unit's debug info. - (scan_unit_for_symbols): Add support for variables which have the - DW_AT_specification attribute. - -2020-03-19 Nick Clifton - - PR 25699 - * elf.c (bfd_elf_set_group_contents): Replace assertion with an - error return. - -2020-03-19 Sebastian Huber - - * elfxx-riscv.c (riscv_parse_subset): Don't use C99. - -2020-03-18 Nick Clifton - - PR 25673 - * elf.c (_bfd_elf_write_secondary_reloc_section): Fix illegal - memory access when processing a corrupt secondary reloc section. - -2020-03-18 Christophe Lyon - - * elf32-arm.c (arm_build_one_stub): Emit a fatal error message - instead of calling abort. - * elf32-csky.c (csky_build_one_stub): Likewise. - * elf32-hppa.c (hppa_build_one_stub): Likewise. - * elf32-m68hc11.c (m68hc11_elf_build_one_stub): Likewise. - * elf32-m68hc12.c (m68hc12_elf_build_one_stub): Likewise. - * elf32-metag.c (metag_build_one_stub): Likewise. - * elf32-nios2.c (nios2_build_one_stub): Likewise. - * elf64-ppc.c (ppc_build_one_stub): Likewise. - (ppc_size_one_stub): Likewise. - * elfnn-aarch64.c (aarch64_build_one_stub): Likewise. - -2020-03-17 Nick Clifton - - PR 25688 - * elf.c (_bfd_elf_copy_special_section_fields): Replace assertions - with error messages. - -2020-03-17 Nick Clifton - - PR 25687 - * elf.c (_bfd_elf_slurp_secondary_reloc_section): Remove redundant - free. Add free on another failure path. - -2020-03-16 Alan Modra - - PR 25675 - * elf.c (elf_sort_segments): Don't call bfd_octets_per_byte unless - we have a non-zero section count. Do lma comparison in octets. - -2020-03-16 Alan Modra - - * vms-alpha.c (dst_restore_location): Validate index into - dst_ptr_offsets array before accessing. Return status. - (dst_retrieve_location): Similarly, making "loc" parameter a - pointer to return value. - (_bfd_vms_slurp_etir): Update calls to above functions. - -2020-03-14 Kamil Rytarowski - - * configure.ac: Include netbsd-core.lo for all NetBSD arm and mips - targets. - * configure: Regenerated. - -2020-03-14 Alan Modra - - * section.c (BFD_FAKE_SECTIONS): Formatting. - * bfd-in2.h: Regenerate. - -2020-03-13 Kamil Rytarowski - - * elf.c (elfcore_grok_netbsd_note): Add support for - NT_NETBSDCORE_LWPSTATUS notes. - -2020-03-13 Christophe Lyon - - * bfd-in2.h: Regenerate. - * section.c (asection): Add already_assigned field. - (BFD_FAKE_SECTION): Add default initializer for it. - * ecoff.c (bfd_debug_section): Initialize already_assigned field. - * elf32-arm.c (arm_build_one_stub): Add support for - non_contiguous_regions. - * elf32-csky.c (csky_build_one_stub): Likewise. - * elf32-hppa.c (hppa_build_one_stub): Likewise. - * elf32-m68hc11.c (m68hc11_elf_build_one_stub): Likewise. - * elf32-m68hc12.c (m68hc12_elf_build_one_stub): Likewise. - * elf32-metag.c (metag_build_one_stub): Likewise. - * elf32-nios2.c (nios2_build_one_stub): Likewise. - * elf64-ppc.c (ppc_build_one_stub): Likewise. - (ppc_size_one_stub): Likewise. - * elfnn-aarch64.c (aarch64_build_one_stub): Likewise. - * elflink.c (elf_link_input_bfd): Likewise. - -2020-03-13 H.J. Lu - - PR ld/24920 - * elf-linker-x86.h (elf_linker_x86_params): Add - static_before_all_inputs and has_dynamic_linker. - * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report - dynamic input objects if -static is passed at command-line - before all input files without --dynamic-linker unless - --no-dynamic-linker is used. - -2020-03-13 Kamil Rytarowski - - * elf.c (elfcore_grok_netbsd_note): Add support for aarch64. - -2020-03-13 Christian Eggers - - * bfd.c (bfd_record_phdr): New local "opb". Fix assignment of - "p_paddr" from "at". - * elfcode.h (bfd_from_remote_memory): Add units to several - parameters. New local "opb". Fix usage of p_align. Fix - calculation of "localbase" from "ehdr_vma" and "p_vaddr". Fix - call of target_read_memory. - * elflink.c (elf_fixup_link_order): Fix scope of "s" local. Fix - calculation of "offset" and "output_offset". - (bfd_elf_final_link): New local "opb". Fix calculation of "size" - from "offset" and fix calculation of "end" from "vma+size". Fix - comparison between "sh_addr" and "vma"/"output_offset". - (bfd_elf_discard_info): Fix calculation of "eh_alignment". - * elf-bfd.h (struct elf_link_hash_table): Add unit to tls_size - member. - * elf.c (_bfd_elf_map_sections_to_segments): Add unit (bytes/ - octets) to "wrap_to2 and "phdr_size" locals. Fix calculation of - "wrap_to" value. Add unit (bytes) to phdr_lma variable. Fix - assignment of p_paddr from phdr_lma. Fix comparison between - "lma+size" and "next->lma". - (elf_sort_segments): Fix assignment from p_paddr to lma. - (assign_file_positions_for_load_sections): Add unit (bytes) to - local "align". Fix calculation of local "off_adjust". Fix - calculation of local "filehdr_vaddr". - (assign_file_positions_for_non_load_sections): New local "opb". - Fix calculation of "end" from "p_size". Fix comparison between - "vma+SECTION_SIZE" and "start". Fix calculation of "p_memsz" - from "end" and "p_vaddr". - (rewrite_elf_program_header): Fix comparison between p_vaddr and - vma. Fix assignment to p_paddr from lma. Fix comparison between - p_paddr and lma. Fix assignment to p_paddr from lma. - * merge.c (sec_merge_emit): New local "opb". Convert - "alignment_power" to octets. - (_bfd_add_merge_section): New locals "alignment_power" and - "opb". Fix comparison between "alignment_power" and - "sizeof(align)". - (_bfd_merge_sections): New local "opb". Divide size by opb - before checking align mask. - -2020-03-13 Christian Eggers - - * elf.c (_bfd_elf_make_section_from_shdr): Introduce new temp - opb. Divide Elf_Internal_Shdr::sh_addr by opb when setting - section LMA/VMA. - (_bfd_elf_make_section_from_phdr): Similarly. - (elf_fake_sections): Fix calculation of - Elf_Internal_shdr::sh_addr from section VMA. - (_bfd_elf_map_sections_to_segments): Fix mixup between octets - and bytes. - (assign_file_positions_for_load_sections): Fix calculations of - Elf_Internal_shdr::p_vaddr and p_paddr from section LMA/VMA. Fix - comparison between program header address and section LMA. - (assign_file_positions_for_non_load_sections): Likewise. - (rewrite_elf_program_header): Likewise. Introduce new temp opb. - (IS_CONTAINED_BY_VMA): Add parameter opb. - (IS_CONTAINED_BY_LMA,IS_SECTION_IN_INPUT_SEGMENT, - INCLUDE_SECTION_IN_SEGMENT): Likewise. - (copy_elf_program_header): Update call to ELF_SECTION_IN_SEGMENT. - Fix calculations of p_addr_valid and p_vaddr_offset. - * elflink.c (elf_link_add_object_symbols): Multiply section VMA - with octets per byte when comparing against p_vaddr. - -2020-03-11 Alan Modra - - * som.c (setup_sections): Sanity check subspace.name. - -2020-03-11 Alan Modra - - * elf64-ppc.c (ppc64_elf_inline_plt): Do increment rel in for loop. - -2020-03-10 Alan Modra - - PR 25648 - * ihex.c (ihex_write_object_contents): Don't assume ordering of - addresses here. - -2020-03-09 Alan Modra - - * wasm-module.c (wasm_scan): Sanity check file name length - before allocating memory. Move common section setup code. Do - without bfd_tell to calculate section size. - -2020-03-06 Nick Clifton - - * elf.c (_bfd_elf_set_section_contents): Replace call to abort - with error messages and failure return values. - -2020-03-05 Max Filippov - - * elf32-xtensa.c (shrink_dynamic_reloc_sections): Shrink dynamic - relocation sections for any removed reference to a dynamic symbol. - -2020-03-05 Nick Clifton - - * elf-bfd.h (struct elf_backend_data): Add new fields: - init_secondary_reloc_section, slurp_secondary_reloc_section, - write_secondary_reloc_section. - (_bfd_elf_init_secondary_reloc_section): Prototype. - (_bfd_elf_slurp_secondary_reloc_section): Prototype. - (_bfd_elf_write_secondary_reloc_section): Prototype. - * elf.c ( bfd_section_from_shdr): Invoke the new - init_secondary_reloc_section backend function, if defined, when a - second reloc section is encountered. - (swap_out_syms): Invoke the new symbol_section_index function, if - defined, when computing the section index of an OS/PROC specific - symbol. - (_bfd_elf_init_secondary_reloc_section): New function. - (_bfd_elf_slurp_secondary_reloc_section): New function. - (_bfd_elf_write_secondary_reloc_section): New function. - (_bfd_elf_copy_special_section_fields): New function. - * elfcode.h (elf_write_relocs): Invoke the new - write_secondary_relocs function, if defined, in order to emit - secondary relocs. - (elf_slurp_reloc_table): Invoke the new slurp_secondary_relocs - function, if defined, in order to read in secondary relocs. - * elfxx-target.h (elf_backend_copy_special_section_fields): - Provide a non-NULL default definition. - (elf_backend_init_secondary_reloc_section): Likewise. - (elf_backend_slurp_secondary_reloc_section): Likewise. - (elf_backend_write_secondary_reloc_section): Likewise. - (struct elf_backend_data elfNN_bed): Add initialisers for the new - fields. - * configure.ac (score_elf32_[bl]e_vec): Add elf64.lo - * configure: Regenerate. - -2020-03-05 Alan Modra - - * archive64.c (_bfd_archive_64_bit_slurp_armap): Check parsed_size - against file size before allocating memory. Use bfd_alloc rather - than bfd_zalloc for carsym/strings memory. - -2020-03-04 Alan Modra - - * elf.c (elf_fake_sections): Ensure sh_addralign is such that - sh_addr mod sh_addalign is zero. - -2020-03-04 Alan Modra - - * format.c (bfd_check_format_matches): Call cleanup on error exit. - -2020-03-03 Alan Modra - - * format.c (struct bfd_preserve): Add cleanup field. - (bfd_preserve_save): Add cleanup param and save. - (bfd_preserve_restore): Return cleanup. - (bfd_preserve_finish): Call the cleanup for the discarded match. - (bfd_check_format_matches): Pass cleanup to bfd_preserve_save, - and clear when preserving a match. Restore cleanup too when - restoring that match. - -2020-03-02 Alan Modra - - * cisco-core.c (cisco_core_file_p): Return bfd_cleanup. - * hpux-core.c (hpux_core_core_file_p): Update prototype. - * sco5-core.c (sco5_core_file_p): Return bfd_cleanup. - (core_sco5_vec): Correct initialisers. - -2020-03-02 Alan Modra - - * aix386-core.c (aix386_core_file_p): Return bfd_cleanup. - * aix5ppc-core.c (xcoff64_core_p): Likewise. - * cisco-core.c (cisco_core_file_validate): Likewise. - * hppabsd-core.c (hppabsd_core_core_file_p): Likewise. - * hpux-core.c (hpux_core_core_file_p): Likewise. - * irix-core.c (irix_core_core_file_p): Likewise. - * lynx-core.c (lynx_core_file_p): Likewise. - * netbsd-core.c (netbsd_core_file_p): Likewise. - * osf-core.c (osf_core_core_file_p): Likewise. - * ptrace-core.c (ptrace_unix_core_file_p): Likewise. - * sco5-core.c (sco5_core_file_p): Likewise. - -2020-03-02 H.J. Lu - - * trad-core.c (trad_unix_core_file_p): Return bfd_cleanup. - -2020-03-02 Alan Modra - - * targets.c (bfd_cleanup): New typedef. - (struct bfd <_bfd_check_format>): Return a bfd_cleanup. - * libbfd-in.h (_bfd_no_cleanup): Define. - * format.c (bfd_reinit): Add cleanup parameter, call it. - (bfd_check_format_matches): Set cleanup from _bfd_check_format - call and pass to bfd_reinit. Delete temp, use abfd->xvec instead. - * aout-target.h (callback, object_p): Return bfd_cleanup. - * aout-tic30.c (tic30_aout_callback, tic30_aout_object_p): Likewise. - * archive.c (bfd_generic_archive_p): Likewise. - * binary.c (binary_object_p): Likewise. - * coff-alpha.c (alpha_ecoff_object_p): Likewise. - * coff-ia64.c (ia64coff_object_p): Likewise. - * coff-rs6000.c (_bfd_xcoff_archive_p, rs6000coff_core_p): Likewise. - * coff-sh.c (coff_small_object_p): Likewise. - * coff-stgo32.c (go32_check_format): Likewise. - * coff64-rs6000.c (xcoff64_archive_p, rs6000coff_core_p), - (xcoff64_core_p): Likewise. - * coffgen.c (coff_real_object_p, coff_object_p): Likewise. - * elf-bfd.h (bfd_elf32_object_p, bfd_elf32_core_file_p), - (bfd_elf64_object_p, bfd_elf64_core_file_p): Likewise. - * elfcode.h (elf_object_p): Likewise. - * elfcore.h (elf_core_file_p): Likewise. - * i386msdos.c (msdos_object_p): Likewise. - * ihex.c (ihex_object_p): Likewise. - * libaout.h (some_aout_object_p): Likewise. - * libbfd-in.h (bfd_generic_archive_p, _bfd_dummy_target), - (_bfd_vms_lib_alpha_archive_p, _bfd_vms_lib_ia64_archive_p): Likewise. - * libbfd.c (_bfd_dummy_target): Likewise. - * libcoff-in.h (coff_object_p): Likewise. - * mach-o-aarch64.c (bfd_mach_o_arm64_object_p), - (bfd_mach_o_arm64_core_p): Likewise. - * mach-o-arm.c (bfd_mach_o_arm_object_p), - (bfd_mach_o_arm_core_p): Likewise. - * mach-o-i386.c (bfd_mach_o_i386_object_p), - (bfd_mach_o_i386_core_p): Likewise. - * mach-o-x86-64.c (bfd_mach_o_x86_64_object_p), - (bfd_mach_o_x86_64_core_p): Likewise. - * mach-o.c (bfd_mach_o_header_p, bfd_mach_o_gen_object_p), - (bfd_mach_o_gen_core_p, bfd_mach_o_fat_archive_p): Likewise. - * mach-o.h (bfd_mach_o_object_p, bfd_mach_o_core_p), - (bfd_mach_o_fat_archive_p, bfd_mach_o_header_p): Likewise. - * mmo.c (mmo_object_p): Likewise. - * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise. - * peicode.h (coff_real_object_p, pe_ILF_object_p), - (pe_bfd_object_p): Likewise. - * plugin.c (ld_plugin_object_p, bfd_plugin_object_p): Likewise. - * ppcboot.c (ppcboot_object_p): Likewise. - * rs6000-core.c (rs6000coff_core_p): Likewise. - * som.c (som_object_setup, som_object_p): Likewise. - * srec.c (srec_object_p, symbolsrec_object_p): Likewise. - * tekhex.c (tekhex_object_p): Likewise. - * vms-alpha.c (alpha_vms_object_p): Likewise. - * vms-lib.c (_bfd_vms_lib_archive_p, _bfd_vms_lib_alpha_archive_p), - (_bfd_vms_lib_ia64_archive_p, _bfd_vms_lib_txt_archive_p): Likewise. - * wasm-module.c (wasm_object_p): Likewise. - * xsym.c (bfd_sym_object_p): Likewise. - * xsym.h (bfd_sym_object_p): Likewise. - * aoutx.h (some_aout_object_p): Likewise, and callback parameter - return type. - * pdp11.c (some_aout_object_p): Likewise. - * plugin.c (register_ld_plugin_object_p): Update object_p - parameter type. - * plugin.h (register_ld_plugin_object_p): Likewise. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * libcoff.h: Regenerate. - -2020-03-02 Alan Modra - - * coff-alpha.c (alpha_ecoff_le_vec): Add SEC_SMALL_DATA to - applicable section flags. - * coff-mips.c (mips_ecoff_le_vec, mips_ecoff_be_vec): Likewise. - (mips_ecoff_bele_vec): Likewise. - * coffcode.h (sec_to_styp_flags): Set SEC_SMALL_DATA for .sdata - and .sbss sections. - * ecoff.c (_bfd_ecoff_new_section_hook): Likewise. - (_bfd_ecoff_styp_to_sec_flags): Likewise. - -2020-03-02 Alan Modra - - * elf32-m32r.c (m32r_elf_section_flags): New function. - (elf_backend_section_flags): Define. - * elf32-nds32.c (nds32_elf_section_flags): New function. - (elf_backend_section_flags): Define. - * elf32-ppc.c (ppc_elf_section_from_shdr): Set SEC_SMALL_DATA for - .sbss and .sdata sections. - * elf32-v850.c (v850_elf_section_from_shdr): Set SEC_SMALL_DATA - for SHF_V850_GPREL sections. - * elf64-alpha.c (elf64_alpha_section_from_shdr): Delete outdated - FIXME. - * elf64-hppa.c (elf64_hppa_section_from_shdr): Set SEC_SMALL_DATA - for SHF_PARISC_SHORT sections. - * elf64-ppc.c (ppc64_elf_section_flags): New function. - (elf_backend_section_flags): Define. - * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Set SEC_SMALL_DATA - for SHF_MIPS_GPREL sections. Delete FIXME. - -2020-03-02 Alan Modra - - * elf-bfd.h (elf_backend_section_flags): Remove flagword* param. - * elf.c (_bfd_elf_make_section_from_shdr): Set section flags before - calling elf_backend_section_flags with adjusted params. Use - newsect->flags past that point. - (_bfd_elf_new_section_hook): Always set sh_type and sh_flags for - special sections. - (_bfd_elf_init_private_section_data): Allow normal sh_type sections - to have their type overridden, and all sh_flags but processor and - os specific. - * elf32-arm.c (elf32_arm_section_flags): Adjust for changed params. - * elf32-mep.c (mep_elf_section_flags): Likewise. - * elf32-nios2.c (nios2_elf32_section_flags): Likewise. - * elf64-alpha.c (elf64_alpha_section_flags): Likewise. - * elf64-ia64-vms.c (elf64_ia64_section_flags): Likewise. - * elfnn-ia64.c (elfNN_ia64_section_flags): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Exclude the linker - stub BFD and non-aarch64 input files when scanning for stubs. - -2020-03-02 Alan Modra - - * coff-alpha.c (alpha_ecoff_get_elt_at_filepos): Provide an upper - limit to decompressed element size. - -2020-03-02 Alan Modra - - * vms-lib.c (vms_traverse_index): Add recur_count param and - update calls. Fail on excessive recursion. - -2020-03-02 Alan Modra - - * vms-alpha.c (vms_get_remaining_object_record): Use - bfd_realloc_or_free rather than bfd_realloc. - (add_symbol_entry, vector_grow1, alpha_vms_slurp_relocs): Likewise. - (dst_define_location, parse_module): Likewise, and check realloc - return status before using memory. Return status from function - adjusting all callers. - -2020-02-28 Alan Modra - - * vms-lib.c (_bfd_vms_lib_archive_p): Free memory on error paths. - -2020-02-28 Alan Modra - - * vms-alpha.c (alpha_vms_object_p): Use _bfd_malloc_and_read. - Remove duplicate undersize check. - -2020-02-27 Alan Modra - - PR 24511 - * mmo.c (mmo_scan): Set SEC_DATA for .data. - -2020-02-27 Alan Modra - - PR 24511 - * syms.c (stt): Trim off all but 'e', 'i' and 'p' entries. - (coff_section_type): Adjust comment. - (decode_section_type): Likewise. Call coff_section_type before - decode_section_type. - (bfd_decode_symclass): Use 'c' for common sections other than - the standard one. - -2020-02-27 Alan Modra - - * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Put all data in one - malloc'd block. - -2020-02-27 Alan Modra - - * bfd.c (bfd_stat_arch_elt): Use vector of containing archive, - if file is an archive element. - * bfd-in2.h: Regenerate. - -2020-02-26 Alan Modra - - * archive.c (do_slurp_bsd_armap): Increase minimum parsed_size, and - bfd_set_error on failing test. Don't bother changing bfd_error on - file read error. Check symdef_count is multiple of BSD_SYMDEF_SIZE. - Check sym name is within string buffer. Use size_t for some vars. - (do_slurp_coff_armap): Use size_t for some variables, fix size of - int_buf. Don't change bfd_error on file read error. Use - _bfd_mul_overflow when calculating carsym buffer size. Reorder - calculations to catch overflows before they occur. malloc and - free raw armap rather than using bfd_alloc. Read raw armap before - allocating carsym+strings buffer. - (_bfd_slurp_extended_name_table): Localize variables. Check - name size against file size. - -2020-02-26 Alan Modra - - * vms-lib.c (vms_lib_read_index): Release correct buffer. - -2020-02-26 Alan Modra - - * elf32-rx.c (rx_elf_relocate_section): Use bfd_malloc rather than - malloc. Check for NULL return from bfd_malloc. - (rx_table_find, rx_table_map): Likewise. - (rx_set_section_contents): Check bfd_alloc return. - (rx_dump_symtab): Don't alloc internal_syms or external_syms. - -2020-02-26 Alan Modra - - * aoutx.h: Indent labels correctly. Format error strings. - * archive.c: Likewise. - * archive64.c: Likewise. - * coff-arm.c: Likewise. - * coff-rs6000.c: Likewise. - * coff-stgo32.c: Likewise. - * cpu-arm.c: Likewise. - * dwarf2.c: Likewise. - * elf-ifunc.c: Likewise. - * elf-properties.c: Likewise. - * elf-s390-common.c: Likewise. - * elf-strtab.c: Likewise. - * elf.c: Likewise. - * elf32-arm.c: Likewise. - * elf32-bfin.c: Likewise. - * elf32-cr16.c: Likewise. - * elf32-csky.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-msp430.c: Likewise. - * elf32-nds32.c: Likewise. - * elf32-nios2.c: Likewise. - * elf32-pru.c: Likewise. - * elf32-xtensa.c: Likewise. - * elf64-ia64-vms.c: Likewise. - * elf64-x86-64.c: Likewise. - * elfcode.h: Likewise. - * elfcore.h: Likewise. - * elflink.c: Likewise. - * elfnn-aarch64.c: Likewise. - * elfnn-ia64.c: Likewise. - * elfnn-riscv.c: Likewise. - * elfxx-mips.c: Likewise. - * elfxx-sparc.c: Likewise. - * elfxx-x86.c: Likewise. - * i386lynx.c: Likewise. - * merge.c: Likewise. - * pdp11.c: Likewise. - * plugin.c: Likewise. - * reloc.c: Likewise. - -2020-02-26 Alan Modra - - PR 25593 - * elf-bfd.h (struct elf_link_hash_table): Rename "loaded" to - "dyn_loaded". - (bfd_elf_add_dt_needed_tag): Declare. - * elf-strtab.c (_bfd_elf_strtab_restore): Handle NULL buf. - * elflink.c (bfd_elf_add_dt_needed_tag): Make global and rename - from elf_add_dt_needed_tag. Remove soname and doit param. - (elf_link_add_object_symbols): Don't use elf_add_dt_needed_tag - to see whether as-needed lib is already loaded, use dyn_loaded - list instead. When saving and restoring around as-needed lib - handle possibility that dynstr has not been initialised. Don't - add DT_NEEDED tags here. Limit dyn_loaded list to dynamic libs. - Mark libs loaded via DT_NEEDED entries of other libs with - DYN_NO_NEEDED if they should not be mentioned in DT_NEEDED of - the output. - (elf_link_check_versioned_symbol): Remove now unneccesary - DYNAMIC check when traversing dyn_loaded list. - -2020-02-26 Alan Modra - - * bfdio.c (bfd_get_file_size): Ignore bogus archive element sizes. - -2020-02-25 H.J. Lu - - PR binutils/25584 - * plugin.c (need_lto_wrapper_p): New. - (bfd_plugin_set_program_name): Add an int argument to set - need_lto_wrapper_p. - (get_lto_wrapper): Return FALSE if need_lto_wrapper_p isn't - set. - * plugin.h (bfd_plugin_set_program_name): Add an int argument. - -2020-02-24 Alan Modra - - * vms-lib.c (_bfd_vms_lib_archive_p): Correct overflow checks. - -2020-02-24 Alan Modra - - * vms-lib.c (struct carsym_mem): Add limit. - (vms_add_index): Heed limit. - (vms_traverse_index): Catch buffer overflows. Remove outdated fixme. - (vms_lib_read_index): Set up limit. Catch 32-bit overflow. - Always return actual number read. - (_bfd_vms_lib_archive_p): Catch buffer overflows. Replace - assertion with error exit. - -2020-02-22 Alan Modra - - PR 25585 - * elf.c (assign_file_positions_for_load_sections): Continue linking - on "PHDR segment not covered by LOAD segment" errors. - -2020-02-21 Alan Modra - - * mach-o.c (bfd_mach_o_canonicalize_relocs): Fix ineffective - overflow check. - (bfd_mach_o_canonicalize_reloc): Likewise. - (bfd_mach_o_canonicalize_dynamic_reloc): Likewise. Sanity check - counts and offsets against file size. - (bfd_mach_o_build_dysymtab): Fix ineffective overflow check. - (bfd_mach_o_mangle_sections): Remove unnecessary overflow check. - (bfd_mach_o_read_symtab_symbols): Sanity check count and offset - against file size. Delete symbol table error message. - (bfd_mach_o_read_dysymtab): Sanity check counts and offsets - against file size. - (bfd_mach_o_read_symtab): Likewise. - (bfd_mach_o_read_command): Pass file size. - (bfd_mach_o_scan): Sanity check command count against file size. - -2020-02-21 Alan Modra - - PR 25569 - * aoutx.h (adjust_o_magic, adjust_z_magic, adjust_n_magic): Use - "text", "data" and "bss" section pointer vars. Don't update - section size, just exec header sizes. - (adjust_sizes_and_vmas): Don't update text section size. Set - initial exec header a_text. Print exec headers sizes. - * pdp11.c (adjust_o_magic, adjust_z_magic, adjust_n_magic), - (adjust_sizes_and_vmas): Similarly. Formatting. - (final_link): Correct final file extension. - -2020-02-20 Nick Clifton - - * elf-bfd.h (struct elf_backend_data): Add symbol_section_index - callback. - * elfxx-target.h (elf_backend_symbol_section_index): Provide - default definition. - (elfNN_bed): Initialise the symbol_section_index field. - * elf.c (swap_out_syms): Call symbol_section_index, if defined, on - OS and PROC specific section indicies. Warn if converting other - reserved incidies to SHN_ABS. - -2020-02-19 Sergey Belyashov - - PR 25537 - * cpu-z80.c: Add machine type compatibility checking. - -2020-02-19 H.J. Lu - - PR binutils/25355 - * plugin.c (plugin_list_entry): Remove handle. - (try_load_plugin): Call dlclose before return. - -2020-02-19 Alan Modra - - * libbfd-in.h (_bfd_constant_p): Define. - (_bfd_alloc_and_read, _bfd_malloc_and_read): Check read size against - file size before allocating memory. - * coffgen.c (_bfd_coff_get_external_symbols): Remove file size check. - * elf.c (bfd_elf_get_str_section): Likewise. - (_bfd_elf_slurp_version_tables): Likewise. - * libbfd.h: Regenerate. - -2020-02-19 Alan Modra - - * libbfd-in.h (_bfd_alloc_and_read, _bfd_malloc_and_read): New. - * aoutx.h (aout_get_external_symbols): Replace calls to - bfd_[m]alloc and bfd_bread with call to _bfd_[m]alloc_and_read. - (slurp_reloc_table): Likewise. - * archive.c (do_slurp_bsd_armap): Likewise. - (do_slurp_coff_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. - * coffcode.h (coff_set_arch_mach_hook, buy_and_read): Likewise. - * coffgen.c (coff_real_object_p, coff_object_p, build_debug_section), - (_bfd_coff_get_external_symbols): Likewise. - * ecoff.c (ecoff_slurp_symbolic_header), - (_bfd_ecoff_slurp_symbolic_info, ecoff_slurp_reloc_table), - (_bfd_ecoff_slurp_armap, ecoff_link_add_object_symbols, READ), - (ecoff_indirect_link_order): Likewise. - * elf.c (bfd_elf_get_str_section, setup_group, elf_read_notes), - (_bfd_elf_slurp_version_tables): Likewise. - * elf32-m32c.c (m32c_elf_relax_section): Likewise. - * elf32-rl78.c (rl78_elf_relax_section): Likewise. - * elf32-rx.c (elf32_rx_relax_section): Likewise. - * elf64-alpha.c (READ): Likewise. - * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Likewise. - * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Likewise. - * elfcode.h (elf_slurp_symbol_table), - (elf_slurp_reloc_table_from_section): Likewise. - * elflink.c (elf_link_add_object_symbols), - (elf_link_check_versioned_symbol): Likewise. - * elfxx-mips.c (READ): Likewise. - * i386lynx.c (slurp_reloc_table): Likewise. - * lynx-core.c (lynx_core_file_p): Likewise. - * mach-o.c (bfd_mach_o_canonicalize_relocs), - (bfd_mach_o_read_symtab_strtab, bfd_mach_o_alloc_and_read), - (bfd_mach_o_read_prebound_dylib, bfd_mach_o_read_dyld_content - * pdp11.c (aout_get_external_symbols, slurp_reloc_table - * pef.c (bfd_pef_print_loader_section, bfd_pef_scan_start_address), - (bfd_pef_parse_symbols): Likewise. - * peicode.h (pe_ILF_object_p, pe_bfd_object_p - * som.c (setup_sections, som_slurp_string_table), - (som_slurp_reloc_table, som_bfd_count_ar_symbols), - (som_bfd_fill_in_ar_symbols): Likewise. - * vms-alpha.c (module_find_nearest_line, evax_bfd_print_dst), - (evax_bfd_print_image): Likewise. - * vms-lib.c (_bfd_vms_lib_archive_p): Likewise. - * wasm-module.c (wasm_scan): Likewise. - * xcofflink.c (xcoff_link_add_symbols): Likewise. - * xsym.c (bfd_sym_read_name_table), - (bfd_sym_print_type_information_table_entry): Likewise. - * libbfd.h: Regenerate. - -2020-02-19 Alan Modra - - * aoutx.h (slurp_reloc_table): Allocate reloc_cache after - reading external relocs. - * ecoff.c (ecoff_slurp_reloc_table): Likewise. - * archive.c (_bfd_write_archive_contents): Don't twiddle bfd_error - after bfd_bread. - * archive64.c (_bfd_archive_64_bit_slurp_armap): Remove unnecessary - bfd_release. - * elf32-m32c.c (m32c_offset_for_reloc): Make shndx_buf a bfd_byte*. - (m32c_elf_relax_section): Likewise. - * elf32-rl78.c (rl78_offset_for_reloc): Likewise. - (rl78_elf_relax_section): Likewise. - * elf32-rx.c (rx_offset_for_reloc): Likewise. - (elf32_rx_relax_section): Likewise. - * mach-o.c (bfd_mach_o_alloc_and_read): Move earlier with better - parameter types and use.. - (bfd_mach_o_read_dylinker, bfd_mach_o_read_dylib), - (bfd_mach_o_read_fvmlib, bfd_mach_o_read_str): ..in these functions. - * peicode.h (pe_bfd_object_p): Don't zero the part of opthdr - being read from file, just the extra. - * som.c (som_slurp_symbol_table): Allocate internal symbol buffer - after reading external syms. Free on failure. - -2020-02-19 Alan Modra - - * coffcode.h (buy_and_read, coff_slurp_line_table), - (coff_slurp_symbol_table, coff_slurp_reloc_table): Replace - bfd_[z][m]alloc2 calls with _bfd_mul_overflow followed by the - corresponding bfd_alloc call. Adjust variables to suit. - * coffgen.c (_bfd_coff_get_external_symbols): Likewise. - * ecoff.c (_bfd_ecoff_slurp_symbolic_info), - (_bfd_ecoff_slurp_symbol_table, READ): Likewise. - * elf.c (bfd_elf_get_elf_syms, setup_group, bfd_section_from_shdr), - (swap_out_syms, _bfd_elf_slurp_version_tables): Likewise. - * elf32-m32c.c (m32c_elf_relax_section): Likewise. - * elf32-rl78.c (rl78_elf_relax_section): Likewise. - * elf32-rx.c (elf32_rx_relax_section): Likewise. - * elf64-alpha.c (READ): Likewise. - * elfcode.h (elf_object_p, elf_write_relocs, elf_write_shdrs_and_ehdr), - (elf_slurp_symbol_table, elf_slurp_reloc_table), - (bfd_from_remote_memory): Likewise. - * elfcore.h (core_find_build_id): Likewise. - * elfxx-mips.c (READ): Likewise. - * mach-o.c (bfd_mach_o_mangle_sections), - (bfd_mach_o_read_symtab_symbols, bfd_mach_o_read_thread), - (bfd_mach_o_read_dysymtab, bfd_mach_o_flatten_sections), - (bfd_mach_o_scan, bfd_mach_o_fat_archive_p): Likewise. - * som.c (setup_sections, som_prep_for_fixups) - (som_build_and_write_symbol_table, som_slurp_symbol_table), - (som_slurp_reloc_table, som_bfd_count_ar_symbols), - (som_bfd_fill_in_ar_symbols, som_slurp_armap), - (som_bfd_ar_write_symbol_stuff): Likewise. - * vms-alpha.c (vector_grow1): Likewise. - * vms-lib.c (vms_add_index): Likewise. - * wasm-module.c (wasm_scan_name_function_section): Likewise. - * libbfd.c (bfd_malloc2, bfd_realloc2, bfd_zmalloc2): Delete. - * opncls.c (bfd_alloc2, bfd_zalloc2): Delete. - * libbfd-in.h (bfd_malloc2, bfd_realloc2, bfd_zmalloc2), - (bfd_alloc2, bfd_zalloc2): Delete. - (_bfd_mul_overflow): Define. - * libbfd.h: Regenerate. - -2020-02-19 Alan Modra - - * elf.c (bfd_section_from_shdr): Use bfd_zalloc rather than - bfd_zalloc2. - (assign_section_numbers): Likewise. - (elf_map_symbols): Likewise, and bfd_alloc rather than bfd_alloc2. - (_bfd_elf_map_sections_to_segments): Use bfd_malloc rather than - bfd_malloc2, size_t amt, and unsigned tls_count. - (rewrite_elf_program_header): Use bfd_malloc and size_t amt. - * elflink.c (elf_create_symbuf): Use bfd_malloc. - (elf_output_implib): Use bfd_alloc. - -2020-02-19 Alan Modra - - * bfd.c (struct bfd): Move format and direction to other - bitfields. Add "size". - * bfdio.c (bfd_get_size): Cache size when not writing file. - * opncls.c (bfd_get_debug_link_info_1): Allow for bfd_get_size - returning zero, ie. unknown. - (bfd_get_alt_debug_link_info): Likewise. - * bfd-in2.h: Regenerate. - -2020-02-19 Alan Modra - - * coffgen.c (_bfd_coff_get_external_symbols): Don't call - bfd_get_file_size twice. - (_bfd_coff_read_string_table): Allow for bfd_get_file_size - zero, ie. unknown, return. - * elf-attrs.c (_bfd_elf_parse_attributes): Likewise. - * elfcode.h (elf_swap_shdr_in): Likewise. - (elf_object_p): Don't call bfd_get_file_size twice and correct - file size check. - -2020-02-19 Alan Modra - - * mach-o.c (bfd_mach_o_flatten_sections): Return a bfd_boolean, - FALSE if memory alloc fails. Adjust calls. - * som.c (som_prep_for_fixups): Likewise. - * vms-alpha.c (alpha_vms_add_fixup_lp, alpha_vms_add_fixup_ca), - (alpha_vms_add_fixup_qr, alpha_vms_add_fixup_lr), - (alpha_vms_add_lw_reloc, alpha_vms_add_qw_reloc): Likewise. - * som.c (som_build_and_write_symbol_table): Return via error_return - on seek failure. - * vms-alpha.c (VEC_APPEND): Adjust for vector_grow1 changes. - (VEC_APPEND_EL): Delete. - (vector_grow1): Return pointer to element. Catch overflow. - Return NULL on memory allocation failure. - (alpha_vms_add_fixup_lp): Replace VEC_APPEND_EL with VEC_APPEND. - (alpha_vms_add_fixup_ca): Likewise. - (alpha_vms_link_add_object_symbols): Check VEC_APPEND result - before using. - * elf.c (bfd_section_from_shdr): Check bfd_zalloc2 result. - -2020-02-19 Alan Modra - - * aix386-core.c (aix386_core_file_p): Use size_t for "amt". - * aout-target.h (object_p): Likewise. - * aout-tic30.c (tic30_aout_object_p): Likewise. - * aoutx.h (some_aout_object_p, mkobject, make_empty_symbol), - (emit_stringtab, write_syms, link_hash_table_create), - (aout_link_write_other_symbol): Likewise. - * archive.c (_bfd_generic_mkarchive, bfd_generic_archive_p), - (bfd_ar_hdr_from_filesystem, _bfd_write_archive_contents), - (_bfd_compute_and_write_armap): Likewise. - * archures.c (bfd_arch_list): Likewise. - * bfd.c (bfd_record_phdr): Likewise. - * binary.c (binary_canonicalize_symtab): Likewise. - * cisco-core.c (cisco_core_file_validate): Likewise. - * coff-arm.c (coff_arm_link_hash_table_create, find_thumb_glue), - (find_arm_glue, record_arm_to_thumb_glue), - (record_thumb_to_arm_glue): Likewise. - * coff-ppc.c (ppc_coff_link_hash_table_create, record_toc), - (ppc_allocate_toc_section): Likewise. - * coff-rs6000.c (_bfd_xcoff_mkobject, _bfd_xcoff_archive_p): Likewise. - * coff-sh.c (sh_relax_section): Likewise. - * coff64-rs6000.c (xcoff64_archive_p): Likewise. - * coffcode.h (handle_COMDAT, coff_new_section_hook), - (coff_set_alignment_hook, coff_mkobject), - (coff_compute_section_file_positions): Likewise. - * coffgen.c (coff_make_empty_symbol, coff_bfd_make_debug_symbol), - (coff_find_nearest_line_with_names), - ( bfd_coff_set_symbol_class): Likewise. - * cofflink.c (_bfd_coff_link_hash_table_create), - (_bfd_coff_link_input_bfd): Likewise. - * dwarf1.c (alloc_dwarf1_unit, alloc_dwarf1_func): Likewise. - * dwarf2.c (read_abbrevs, read_attribute_value, add_line_info), - (build_line_info_table, sort_line_sequences), - (line_info_add_include_dir, line_info_add_file_name), - (decode_line_info, scan_unit_for_symbols, parse_comp_unit), - (place_sections, _bfd_dwarf2_slurp_debug_info): Likewise. - * ecoff.c (_bfd_ecoff_mkobject, _bfd_ecoff_make_empty_symbol), - (_bfd_ecoff_find_nearest_line), - (_bfd_ecoff_bfd_link_hash_table_create): Likewise. - * ecofflink.c (bfd_ecoff_debug_init): Likewise. - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Likewise. - * elf-m10300.c (mn10300_elf_relax_section), - (elf32_mn10300_link_hash_table_create): Likewise. - * elf-strtab.c (_bfd_elf_strtab_init): Likewise. - * elf.c (make_mapping, copy_elf_program_header): Likewise. - * elf32-arm.c (elf32_arm_link_hash_table_create), - (elf32_arm_setup_section_lists, elf32_arm_check_relocs), - (elf32_arm_new_section_hook): Likewise. - * elf32-avr.c (elf_avr_new_section_hook), - (elf32_avr_link_hash_table_create, get_local_syms), - (elf32_avr_setup_section_lists): Likewise. - * elf32-bfin.c (bfinfdpic_elf_link_hash_table_create), - (bfin_link_hash_table_create): Likewise. - * elf32-cr16.c (elf32_cr16_link_hash_table_create): Likewise. - * elf32-cris.c (elf_cris_link_hash_table_create): Likewise. - * elf32-csky.c (csky_elf_link_hash_table_create), - (csky_elf_check_relocs, elf32_csky_setup_section_lists): Likewise. - * elf32-frv.c (frvfdpic_elf_link_hash_table_create): Likewise. - * elf32-hppa.c (elf32_hppa_link_hash_table_create), - (elf32_hppa_setup_section_lists, get_local_syms): Likewise. - * elf32-i386.c (elf_i386_check_relocs): Likewise. - * elf32-lm32.c (lm32_elf_link_hash_table_create): Likewise. - * elf32-m32r.c (m32r_elf_link_hash_table_create), - (m32r_elf_check_relocs): Likewise. - * elf32-m68hc1x.c (m68hc11_elf_hash_table_create), - (elf32_m68hc11_setup_section_lists), - (elf32_m68hc11_size_stubs): Likewise. - * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise. - * elf32-metag.c (elf_metag_link_hash_table_create), - (elf_metag_setup_section_lists): Likewise. - * elf32-microblaze.c (microblaze_elf_link_hash_table_create), - (microblaze_elf_check_relocs): Likewise. - * elf32-nds32.c (nds32_elf_link_hash_table_create), - (nds32_elf_check_relocs): Likewise. - * elf32-nios2.c (nios2_elf32_setup_section_lists), - (get_local_syms, nios2_elf32_check_relocs), - (nios2_elf32_link_hash_table_create): Likewise. - * elf32-or1k.c (or1k_elf_link_hash_table_create), - (or1k_elf_check_relocs): Likewise. - * elf32-ppc.c (ppc_elf_modify_segment_map, update_plt_info): Likewise. - * elf32-pru.c (pru_elf32_link_hash_table_create): Likewise. - * elf32-s390.c (elf_s390_link_hash_table_create), - (elf_s390_check_relocs): Likewise. - * elf32-score.c (score_elf_create_got_section), - (s3_elf32_score_new_section_hook), - (elf32_score_link_hash_table_create): Likewise. - * elf32-score7.c (score_elf_create_got_section), - (s7_elf32_score_new_section_hook): Likewise. - * elf32-sh.c (sh_elf_link_hash_table_create), - (sh_elf_check_relocs): Likewise. - * elf32-tic6x.c (elf32_tic6x_link_hash_table_create), - (elf32_tic6x_new_section_hook, elf32_tic6x_check_relocs): Likewise. - * elf32-tilepro.c (tilepro_elf_link_hash_table_create), - (tilepro_elf_check_relocs): Likewise. - * elf32-v850.c (remember_hi16s_reloc): Likewise. - * elf32-vax.c (elf_vax_link_hash_table_create): Likewise. - * elf32-xtensa.c (elf_xtensa_link_hash_table_create), - (elf_xtensa_new_section_hook): Likewise. - * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create), - (get_got_entry, elf64_alpha_check_relocs): Likewise. - * elf64-hppa.c (elf64_hppa_hash_table_create): Likewise. - * elf64-ia64-vms.c (elf64_ia64_object_p): Likewise. - * elf64-mmix.c (mmix_elf_new_section_hook): Likewise. - * elf64-ppc.c (ppc64_elf_new_section_hook), - (ppc64_elf_link_hash_table_create, update_local_sym_info), - (update_plt_info, ppc64_elf_check_relocs): Likewise. - * elf64-s390.c (elf_s390_link_hash_table_create), - (elf_s390_check_relocs): Likewise. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - * elflink.c (bfd_elf_link_record_local_dynamic_symbol), - (_bfd_elf_link_find_version_dependencies, elf_link_add_object_symbols), - (elf_link_add_archive_symbols, compute_bucket_count), - (bfd_elf_size_dynsym_hash_dynstr, _bfd_elf_link_hash_table_create), - (bfd_elf_get_bfd_needed_list, elf_link_swap_symbols_out), - (bfd_elf_final_link): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_link_hash_table_create), - (elfNN_aarch64_setup_section_lists, elfNN_aarch64_check_relocs), - (elfNN_aarch64_new_section_hook): Likewise. - * elfnn-ia64.c (elfNN_ia64_object_p): Likewise. - * elfnn-riscv.c (riscv_elf_link_hash_table_create), - (riscv_elf_check_relocs): Likewise. - * elfxx-mips.c (_bfd_mips_elf_new_section_hook), - (_bfd_mips_elf_add_symbol_hook, _bfd_mips_elf_check_relocs), - (_bfd_mips_elf_modify_segment_map, _bfd_mips_elf_set_section_contents), - (_bfd_mips_elf_link_hash_table_create): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_link_hash_table_create), - (_bfd_sparc_elf_check_relocs), - (_bfd_sparc_elf_new_section_hook): Likewise. - * elfxx-tilegx.c (tilegx_elf_link_hash_table_create), - (tilegx_elf_check_relocs): Likewise. - * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Likewise. - * format.c (bfd_check_format_matches): Likewise. - * hash.c (_bfd_stringtab_init): Likewise. - * ihex.c (ihex_scan): Likewise. - * irix-core.c (irix_core_core_file_p): Likewise. - * linker.c (bfd_wrapped_link_hash_lookup), - (_bfd_generic_link_hash_table_create), - (_bfd_generic_reloc_link_order): Likewise. - * lynx-core.c (lynx_core_file_p): Likewise. - * netbsd-core.c (netbsd_core_file_p): Likewise. - * osf-core.c (osf_core_core_file_p): Likewise. - * pdp11.c (some_aout_object_p, mkobject, make_empty_symbol), - (link_hash_table_create, aout_link_write_other_symbol): Likewise. - * peXXigen.c (_bfd_XX_bfd_copy_private_section_data): Likewise. - * peicode.h (pe_mkobject): Likewise. - * ppcboot.c (ppcboot_mkobject, ppcboot_canonicalize_symtab): Likewise. - * ptrace-core.c (ptrace_unix_core_file_p): Likewise. - * sco5-core.c (read_uarea): Likewise. - * som.c (hppa_som_gen_reloc_type, som_object_p, som_prep_headers), - (som_write_fixups, som_write_space_strings, som_write_symbol_strings), - (som_finish_writing, som_canonicalize_symtab, som_new_section_hook), - (som_bfd_copy_private_section_data, bfd_som_set_section_attributes), - (bfd_som_attach_aux_hdr, som_write_armap): Likewise. - * srec.c (srec_scan): Likewise. - * syms.c (_bfd_generic_make_empty_symbol): Likewise. - * targets.c (bfd_target_list): Likewise. - * tekhex.c (first_phase, tekhex_sizeof_headers): Likewise. - * trad-core.c (trad_unix_core_file_p): Likewise. - * vms-alpha.c (vms_initialize, alpha_vms_bfd_link_hash_table_create), - (vms_new_section_hook): Likewise. - * wasm-module.c (wasm_make_empty_symbol): Likewise. - * xcofflink.c (xcoff_get_section_contents), - (_bfd_xcoff_bfd_link_hash_table_create, xcoff_set_import_path), - (xcoff_find_function, bfd_xcoff_link_record_set, xcoff_build_ldsym), - (bfd_xcoff_size_dynamic_sections, xcoff_link_input_bfd): Likewise. - -2020-02-19 Alan Modra - - * elfxx-riscv.c (riscv_multi_letter_ext_valid_p): Don't use C99. - -2020-02-13 H.J. Lu - - * plugin.c (try_load_plugin): Make plugin_list_iter an argument - and use it if it isn't NULL. Remove has_plugin_p argument. Add - a build_list_p argument. Don't search plugin_list. Short circuit - when building the plugin list. - (has_plugin): Renamed to has_plugin_list. - (bfd_plugin_set_plugin): Don't set has_plugin. - (bfd_plugin_specified_p): Check plugin_list instead. - (build_plugin_list): New function. - (load_plugin): Call build_plugin_list and use plugin_list. - -2020-02-11 H.J. Lu - - PR binutils/25355 - * plugin.c (try_claim): Always clean up for LTO wrapper. - (try_load_plugin): Treat each object as independent. Create a - copy for plugin name. - -2020-02-11 Nick Clifton - - * elf32-msp430.c (msp430_final_link_relocate): Always use longs - for addresses in print statements. - (msp430_elf_relax_delete_bytes): Likewise. - (msp430_elf_relax_add_words): Likewise. - (msp430_elf_relax_section): Likewise. - -2020-02-11 H.J. Lu - - * plugin.c (add_symbols): Clear plugin_data memory. - -2020-02-10 H.J. Lu - - PR binutils/25355 - * configure.ac (HAVE_EXECUTABLE_SUFFIX): New AC_DEFINE. - (EXECUTABLE_SUFFIX): Likewise. - * config.in: Regenerated. - * configure: Likewise. - * plugin.c (bfd_plugin_close_and_cleanup): Removed. - (plugin_list_entry): Add all_symbols_read, cleanup_handler, - gcc, lto_wrapper, resolution_file, resolution_option, gcc_env, - real_bfd, real_nsyms, real_syms, lto_nsyms and lto_syms. - (get_lto_wrapper): New. - (setup_lto_wrapper_env): Likewise. - (current_plugin): Likewise. - (register_all_symbols_read): Likewise. - (register_cleanup): Likewise. - (get_symbols): Likewise. - (add_input_file): Likewise. - (bfd_plugin_close_and_cleanup): Likewise. - (claim_file): Removed. - (register_claim_file): Set current_plugin->claim_file. - (add_symbols): Make a copy of LTO symbols. Set lto_nsyms and - lto_syms in current_plugin. - (try_claim): Use current_plugin->claim_file. Call LTO plugin - all_symbols_read handler. Copy real symbols to plugin_data. - Call LTO plugin cleanup handler. Clean up for LTO wrapper. - (try_load_plugin): Don't reuse the previous plugin for LTO - wrapper. Set up GCC LTO wrapper if possible. Don't set - plugin_list_iter->claim_file. - (bfd_plugin_canonicalize_symtab): Use real LTO symbols if - possible. - * plugin.h (plugin_data_struct): Add real_bfd, real_nsyms and - real_syms. - -2020-02-10 Jozef Lawrynowicz - - * elf32-msp430.c (msp430_elf_relax_section): Before relaxing a branch, - check if previous instruction matches a conditional jump inserted - earlier. Invert conditional jump and delete branch in this case. - -2020-02-10 Jozef Lawrynowicz - - * elf32-msp430.c (msp430_elf_relax_add_two_words): Rename to - msp430_elf_relax_add_words. Support insertion of either one or two - words. - (msp430_elf_relax_section): Catch opcode of 0x3c00 when relocation - needs to be grown. Handle insertion of branch instruction to replace - jump. - -2020-02-10 Jozef Lawrynowicz - - * elf32-msp430.c (msp430_final_link_relocate): Add printf statements for - debugging relocations. - (msp430_elf_relax_delete_bytes): Likewise. - (msp430_elf_relax_add_two_words): Likewise. - (msp430_elf_relax_section): Likewise. - -2020-02-10 Alan Modra - - * archures.c: Wrap overlong z80 comments. - * bfd-in2.h: Regenerate. - -2020-02-07 Sergey Belyashov - - PR 25469 - * archures.c: Add GBZ80 and Z80N machine values. - * reloc.c: Add BFD_RELOC_Z80_16_BE. - * coff-z80.c: Add support for new reloc. - * coffcode.h: Add support for new machine values. - * cpu-z80.c: Add support for new machine names. - * elf32-z80.c: Add support for new reloc. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - -2020-02-07 Nick Clifton - - PR 23932 - * elf.c (rewrite_elf_program_header): Do not complain if no - sections are mapped to a segment. - -2020-02-06 H.J. Lu - - PR ld/25490 - * elflink.c (_bfd_elf_gc_mark_extra_sections): Issue an error - for garbage collection on __patchable_function_entries section - without linked-to section. - -2020-02-06 H.J. Lu - - PR gas/25381 - * bfd-in2.h: Regenerated. - * elflink.c (_bfd_elf_gc_mark_extra_sections): Call mark_hook - on section if gc_mark of any of its linked-to sections is set - and don't set gc_mark again. - * section.c (asection): Add linked_to_symbol_name to map_head - union. - -2020-02-06 Maciej W. Rozycki - - * elf32-v850.c (v850_elf_relax_section): Fix the index used for - reporting an unrecognized instruction with R_V850_LONGJUMP. - -2020-02-05 Alan Modra - - * elf64-ppc.c (ppc_stub_plt_branch): Match comment with reality. - -2020-02-04 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): After applying - R_PPC_VLE_ADDR20, goto copy_reloc. - -2020-02-02 H.J. Lu - - * bfd-in2.h: Regenerated. - * section.c (SEC_ASSEMBLER_SECTION_ID): Fix a typo in comments. - -2020-02-02 H.J. Lu - - PR gas/25380 - * bfd-in2.h: Regenerated. - * ecoff.c (bfd_debug_section): Add section_id. - * section.c (bfd_section): Add section_id. - (SEC_ASSEMBLER_SECTION_ID): New. - (BFD_FAKE_SECTION): Add section_id. - -2020-02-01 Nick Clifton - - * config.bfd: Move the c30-aout and tic30-aout targets onto the - obsolete list. - -2020-01-31 Sandra Loosemore - - * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): DW_EH_PE_datarel - encodings are relative to the GOT on nios2, too. - -2020-01-31 Alan Modra - - * Makefile.am (elf32-target.h, elf64-target.h): Don't use a temp - file. Use $< and $@ in rules. - (elf32-aarch64.c, elf64-aarch64.c): Likewise. - (elf32-ia64.c, elf64-ia64.c): Likewise. - (elf32-riscv.c, elf64-riscv.c): Likewise. - (peigen.c, pepigen.c, pex64igen.c): Likewise. - (elf32-aarch64.c, elf64-aarch64.c): Don't emit $srcdir on #line. - (elf32-riscv.c, elf64-riscv.c): Likewise, and use $(SED). - (elf32-ia64.c, elf64-ia64.c): Do emit #line. - (peigen.c, pepigen.c, pex64igen.c): Likewise. - * Makefile.in: Regenerate. - -2020-01-31 Alan Modra - - PR 4110 - * elf.c (setup_group): Don't clear entire section contents, - just the padding after group flags. Release alloc'd memory - after a seek or read failure. - -2020-01-16 Jon Turney - - * peXXigen.c (pe_is_repro): New function. - (_bfd_XX_print_private_bfd_data_common): Note timestamp is - actually a build hash if PE_IMAGE_DEBUG_TYPE_REPRO is present. - -2020-01-16 Jon Turney - - * peXXigen.c (debug_type_names): Add names for new debug data type - values. - -2020-01-16 Jon Turney - - * peXXigen.c (pe_print_debugdata): Fix the iteration variable for - inner loop. Fix a memory leak. - -2020-01-30 Alan Modra - - * coffgen.c (coff_real_object_p): Don't clear obj_coff_keep_syms - or obj_coff_keep_strings here. - (coff_get_normalized_symtab): Free external syms directly. - * xcofflink.c (xcoff_link_input_bfd): Restore obj_coff_keep_syms - on error exit path. - -2020-01-27 Jim Wilson - - * cpu-riscv.c (riscv_scan): New. - (N): Change bfd_default_scan to riscv_scan. - -2020-01-27 Andreas Schwab - - * Makefile.am (ALL_MACHINES): Remove cpu-plugin.lo. - (ALL_MACHINES_CFILES): Remove cpu-plugin.c. - * Makefile.in: Regenerate. - * cpu-plugin.c: Remove. - * archures.c (enum bfd_architecture): Remove bfd_arch_plugin. - (bfd_plugin_arch): Remove declaration. - * bfd-in2.h: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - -2020-01-27 H.J. Lu - Alan Modra - - PR ld/25458 - * elflink.c (_bfd_elf_gc_mark_rsec): Mark all weak aliases. - -2020-01-24 Jim Wilson - - * elfxx-riscv.c (riscv_get_prefix_class): Format s case like others. - (riscv_parse_prefixed_ext): Fix s extension comment and reword to - avoid over long line. - -2020-01-24 Nick Clifton - - PR 25447 - * coffgen.c (_bfd_coff_close_and_cleanup): Do not clear the keep - syms and keep strings flags as these may have been set in order to - prevent a bogus call to free. - -2020-01-23 Nick Clifton - - * po/fr.po: Updated French translation. - -2020-01-23 Alan Modra - - PR 25444 - * elf.c (assign_file_positions_for_load_sections): Avoid divide - by zero when p_align is zero. - -2020-01-22 Maxim Blinov - - * bfd/elfnn-riscv.c (riscv_skip_prefix): New. - (riscv_prefix_cmp): Likewise. - (riscv_non_std_ext_p): Deleted. - (riscv_std_sv_ext_p): Likewise. - (riscv_non_std_sv_ext_p): Likewise. - (riscv_merge_non_std_and_sv_ext): Rename to... - (riscv_merge_multi_letter_ext): and modified to use riscv_prefix_cmp. - (riscv_merge_arch_attr_info): Replace 3 calls to - riscv_merge_non_std_and_sv_ext with single call to - riscv_merge_multi_letter_ext. - * bfd/elfxx-riscv.c (riscv_parse_std_ext): Break if we - encounter a 'z' prefix. - (riscv_get_prefix_class): New function, return prefix class based - on first few characters of input string. - (riscv_parse_config): New structure to factor out minor differences - in extension class parsing behaviour. - (riscv_parse_sv_or_non_std_ext): Rename to... - (riscv_parse_prefixed_ext): and parameterise with - riscv_parse_config. - (riscv_std_z_ext_strtab, riscv_std_s_ext_strtab): New. - (riscv_multi_letter_ext_valid_p): New. - (riscv_ext_x_valid_p, riscv_ext_z_valid_p, riscv_ext_s_valid_p): New. - (riscv_parse_subset): Delegate all non-single-letter parsing work - to riscv_parse_prefixed_ext. - * bfd/elfxx-riscv.h (riscv_isa_ext_class): New type. - (riscv_get_prefix_class): Declare. - -2020-01-22 Alan Modra - - * elf64-ppc.c (struct ppc_link_hash_table): Add tga_group. - (ppc64_elf_archive_symbol_lookup): Extract __tls_get_addr_opt for - __tls_get_addr_desc. - (ppc64_elf_size_stubs): Add section for linker generated - __tls_get_addr_desc wrapper function. Loop at least once if - generating this function. - (emit_tga_desc, emit_tga_desc_eh_frame): New functions. - (ppc64_elf_build_stubs): Generate __tls_get_addr_desc. - -2020-01-22 Alan Modra - - * elf64-ppc.h (struct ppc64_elf_params): Add no_tls_get_addr_regsave. - * elf64-ppc.c (struct ppc_link_hash_table): Add tga_desc and - tga_desc_fd. - (is_tls_get_addr): Match tga_desc and tga_desc_df too. - (STDU_R1_0R1, ADDI_R1_R1): Define. - (tls_get_addr_prologue, tls_get_addr_epilogue): New functions. - (ppc64_elf_tls_setup): Set up tga_desc and tga_desc_fd. Indirect - tga_desc_fd to opt_fd, and tga_desc to opt. Set - no_tls_get_addr_regsave. - (branch_reloc_hash_match): Add hash3 and hash4. - (ppc64_elf_tls_optimize): Handle tga_desc_fd and tga_desc too. - (ppc64_elf_size_dynamic_sections): Likewise. - (ppc64_elf_relocate_section): Likewise. - (plt_stub_size, build_plt_stub): Likewise. Size regsave - __tls_get_addr stub. - (build_tls_get_addr_stub): Build regsave __tls_get_addr stub and - eh_frame. - (ppc_size_one_stub): Handle tga_desc_fd and tga_desc too. Size - eh_frame for regsave __tls_get_addr. - -2020-01-22 Alan Modra - - * elf64-ppc.c (ppc64_elf_size_stubs): Correct condition under - which __tls_get_addr calls will be eliminated. - -2020-01-20 Nick Clifton - - * po/pt.po: Updates Portuguese translation. - * po/ru.po: Updated Russian translation. - * po/uk.po: Updated Ukranian translation. - -2020-01-20 H.J. Lu - - PR ld/25416 - * elf64-x86-64.c (elf_x86_64_check_tls_transition): Support - "rex leal x@tlsdesc(%rip), %reg" and "call *x@tlsdesc(%eax)" in - X32 mode. - (elf_x86_64_relocate_section): In x32 mode, for GDesc -> LE - transition, relax "rex leal x@tlsdesc(%rip), %reg" to - "rex movl $x@tpoff, %reg", for GDesc -> IE transition, relax - "rex leal x@tlsdesc(%rip), %reg" to - "rex movl x@gottpoff(%rip), %eax". For both transitions, relax - "call *(%eax)" to "nopl (%rax)". - -2020-01-20 Alan Modra - - * elf64-ppc.c (LD_R11_0R3, CMPDI_R11_0, STD_R11_0R1, LD_R11_0R1), - (MTLR_R11): Don't define. - (LD_R0_0R3, CMPDI_R0_0): Define. - (build_tls_get_addr_stub): Don't use r11 in stub. - -2020-01-20 Alan Modra - - * elf64-ppc.c (ppc_elf_hash_entry): New function, use throughout file. - (defined_sym_val, is_tls_get_addr): Likewise. - -2020-01-18 Nick Clifton - - * version.m4 (BFD_VERSION): Set to 2.34.50. - * configure: Regenerate. - * po/bfd.pot: Regenerate. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-17 Christian Biesinger - - * coff-arm.c: Fix spelling error (seperate). - * elfxx-riscv.c (riscv_parse_sv_or_non_std_ext): Fix spelling - error (seperate). - * sysdep.h (strnlen): Fix spelling error (seperate). - -2020-01-15 Lars Brinkhoff - - PR 20694 - * pdp11.c (TARGET_PAGE_SIZE): Set to 8192. - -2020-01-15 Alan Modra - - PR 25384 - * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Update comment. - (ppc64_elf_adjust_dynamic_symbol): Don't allow .dynbss copies - of function symbols unless dot symbols are present. Do warn - whenever one is created, regardles of whether a PLT entry is - also emitted for the function symbol. - -2020-01-14 Alan Modra - - * som.c (som_bfd_count_ar_symbols): Error when file position - of symbols on chains is not strictly increasing. - -2020-01-14 Alan Modra - - * vms.h (VMS_DEBUG): Define as 0. - * vms-alpha.c (image_write): Move debug output after bounds check. - Tidy bounds check. - (_bfd_vms_slurp_eihd): Warning fix. - (_bfd_vms_slurp_etir): Init variables to avoid bogus warnings. - -2020-01-13 Alan Modra - - * vms-alpha.c (_bfd_vms_slurp_egsd): Ensure minimum size even - for "ignored" records. - -2020-01-13 Alan Modra - - * wasm-module.c (wasm_scan_name_function_section): Formatting. - Delete asect name check. Move asect NULL check to wasm_object_p. - Correct bounds check of sizes against end. Replace uses of - bfd_zalloc with bfd_alloc, zeroing only necessary bytes. Use - just one bfd_release. - (wasm_scan): Don't use malloc/strdup for section names, - bfd_alloc instead. Simplify code prefixing section name. - Formatting. Don't attempt to free memory here.. - (wasm_object_p): ..do so here. - -2020-01-10 Szabolcs Nagy - - PR ld/22269 - * elf32-arm.c (elf32_arm_final_link_relocate): Use - UNDEFWEAK_NO_DYNAMIC_RELOC. - (allocate_dynrelocs_for_symbol): Likewise. - -2020-01-10 Tamar Christina - - PR 25210 - * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Remove elfclass. - -2020-01-10 Alan Modra - - * coff-alpha.c (alpha_ecoff_object_p): Calculate size in bfd_size_type. - -2020-01-09 Nick Clifton - - PR 25221 - * bfd.c (bfd_convert_section_contents): Check for a compress - header size that is larger than the actual section size. - -2020-01-08 Alan Modra - - PR 25351 - * elflink.c (bfd_elf_final_link): Call _bfd_fix_excluded_sec_syms - after removing sections. - -2020-01-06 Jim Wilson - - PR 25205 - * elfnn-riscv.c (riscv_elf_relocate_section) : Add - check for !bfd_link_pic (info). - : Move next to R_RISCV_CALL. - : Add comment. - (_bfd_riscv_relax_section): For plt.offset check, add check for - bfd_link_pic (info). Add comment. - -2020-01-06 Alan Modra - - * format.c (bfd_check_format_matches): Ignore bfd_error on target - match failures. Don't init to bfd_error_wrong_format before - calling _bfd_check_format. - -2020-01-06 Alan Modra - - * vms-alpha.c (_bfd_vms_push, _bfd_vms_pop): Return pass/fail - status rather than exiting on stack overflow or underflow. - (_bfd_vms_slurp_etir): Adjust to suit. - -2020-01-06 Alan Modra - - * som.c (som_bfd_fill_in_ar_symbols): Bounds check som_dict index. - -2020-01-06 Alan Modra - - * mach-o.c (bfd_mach_o_read_dylinker): Don't read past end of - command. Check name offset is within command. - (bfd_mach_o_read_dylib, bfd_mach_o_read_prebound_dylib), - (bfd_mach_o_read_prebind_cksum, bfd_mach_o_read_twolevel_hints), - (bfd_mach_o_read_fvmlib, bfd_mach_o_read_dysymtab), - (bfd_mach_o_read_symtab, bfd_mach_o_read_uuid), - (bfd_mach_o_read_linkedit, bfd_mach_o_read_str), - (bfd_mach_o_read_dyld_info, bfd_mach_o_read_version_min), - (bfd_mach_o_read_encryption_info, bfd_mach_o_read_source_version), - (bfd_mach_o_read_encryption_info_64, bfd_mach_o_read_main), - (bfd_mach_o_read_note, bfd_mach_o_read_build_version), - (bfd_mach_o_read_segment): Similarly. - (bfd_mach_o_read_thread): Properly bound check thread struct. - Don't repeat checks on second loop. - (bfd_mach_o_read_command): Fail on invalid command length. - -2020-01-04 Alan Modra - - * format.c (bfd_check_format_matches): Add preserve_match. - Save initial bfd state in "preserve", matched bfd state in - "preserve_match". Save just the first match. Release - bfd_alloc memory. Restore and finish preserved state as - appropriate on all function exit paths. - -2020-01-04 Alan Modra - - * mmo.c (mmo_mkobject): Allocate tdata with bfd_zalloc. - -2020-01-04 Alan Modra - - * coffgen.c (coff_real_object_p): Free malloc'd memory on target - match too. - -2020-01-03 Nick Clifton - - PR 25307 - (bfd_pef_parse_function_stubs): Correct the test that ensures that - there is enough data remaining in the code buffer before - attempting to read a function stub. - -2020-01-03 Nick Clifton - - PR 25308 - * elf-properties.c (_bfd_elf_convert_gnu_properties): Check the - return value from bfd_malloc. - * elf32-arm.c (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise. - (bfd_elf32_arm_stm32l4xx_fix_veneer_locations): Likewise. - (elf32_arm_filter_cmse_symbols): Likewise. - (elf32_arm_write_section): Likewise. - * mach-o.c (bfd_mach_o_core_fetch_environment): Likewise. - (bfd_mach_o_follow_dsym): Likewise. - * pef.c (bfd_pef_print_loader_section): Likewise. - (bfd_pef_scan_start_address): Likewise. - (bfd_pef_parse_function_stubs): Likewise. - (bfd_pef_parse_symbols): Likewise. - -2020-01-03 Sergei Trofimovich - - * elfnn-ia64.c (elfNN_ia64_merge_private_bfd_data): don't fail - on binary inputs ld/PR25316. - (is_ia64_elf): new helper to filter on ia64 objects. - -2020-01-03 Jan Beulich - - * mach-o.c (cpusubtype, bfd_mach_o_header_p): Insert underscore - in parameter names. - (bfd_mach_o_scan): Insert underscore in two variable names. - -2020-01-02 Sergey Belyashov - - * Makefile.am: Add z80-elf target support. - * configure.ac: Likewise. - * targets.c: Likewise. - * Makefile.in: Regenerate. - * configure: Regenerate. - * config.bfd: Add z80-elf target support and new arches: ez80 and - z180. - * elf32-z80.c: New file. - * archures.c: Add new z80 architectures: eZ80 and Z180. - * coffcode.h: Likewise. - * cpu-z80.c: Likewise. - * coff-z80.c: Add new relocations for Z80 target and local label - check. - * reloc.c: Add new relocs. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - -2020-01-02 Tamar Christina - - PR 25210 - PR 24753 - * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Set ELF class. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2019 +For older changes see ChangeLog-2020 -Copyright (C) 2020 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/bfd/ChangeLog-2020 b/bfd/ChangeLog-2020 new file mode 100644 index 00000000000..0cb006d6944 --- /dev/null +++ b/bfd/ChangeLog-2020 @@ -0,0 +1,5017 @@ +2020-12-23 H.J. Lu + + * elf-linker-x86.h (elf_x86_cet_report): Renamed to ... + (elf_x86_prop_report): This. + (elf_linker_x86_params): Add lam_u48, lam_u57, lam_u48_report + and lam_u57_report. + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Support + GNU_PROPERTY_X86_FEATURE_1_LAM_U48 and + GNU_PROPERTY_X86_FEATURE_1_LAM_U57. + (_bfd_x86_elf_link_fixup_gnu_properties): Keep LAM features only + for 64-bit output. + +2020-12-18 H.J. Lu + + PR ld/27091 + * elflink.c (elf_link_input_bfd): Copy elf_gnu_osabi_retain + from input only for relocatable link. + +2020-12-18 Alan Modra + + * elf32-microblaze.c (dbg): Delete unused variable. + * elf32-nds32.c (relax_group_section_id_list): Make static. + * som.c (reloc_queue): Make static. + * xtensa-isa.c (xtisa_errno, xtisa_error_msg): Make static. + +2020-12-18 Alan Modra + + * archive.c (_bfd_ar_spacepad, _bfd_ar_sizepad): Use auto buf. + * coff-mcore.c (coff_mcore_relocate_section): Likewise. + * elf32-ppc.c (ppc_elf_unhandled_reloc): Use asprintf in place + of fixed size and possibly too small buf for translated message. + * elf64-ppc.c (ppc64_elf_unhandled_reloc): Likewise. + * elf32-v850.c (v850_elf_check_relocs): Likewise. + * ecoff.c (ecoff_type_to_string): Pass in return string buff rather + than using static buffer2. Delete dead code. Remove unnecessary + parentheses. + (_bfd_ecoff_print_symbol): Pass auto buff to ecoff_type_to_string. + * elf32-rx.c (describe_flags): Pass in return string buf rather + than using static buf. + (rx_elf_merge_private_bfd_data): Pass buf to describe_flags. + (rx_elf_print_private_bfd_data): Likewise. + * mach-o.c (cpusubtype): Pass in return string buffer rather than + using static buffer. + (bfd_mach_o_bfd_print_private_bfd_data): Pass buff to cpusubtype. + * opncls.c (separate_debug_file_exists): Make buffer an auto var. + (bfd_fill_in_gnu_debuglink_section): Likewise. + * peXXigen.c (rsrc_resource_name): Pass in return string buffer + rather than using static buffer. + (rsrc_sort_entries): Pass buff to rsrc_resource_name. + * vms-alpha.c (_bfd_vms_write_emh): Pass tbuf to get_vms_time_string. + * vms-misc.c (get_vms_time_string): Pass in return string tbuf + rather than using static tbuf. + * vms.h (get_vms_time_string): Update prototype. + +2020-12-18 Alan Modra + + * coff-z80.c (bfd_howto_type): Make typedef const. + * elf32-z80.c (bfd_howto_type): Likewise. + * elf32-m32c.c (EncodingTable): Likewise. + * elf32-csky.c (csky_arch_for_merge): Likewise. + (csky_archs): Use typedef. + * elf32-m68hc11.c (m68hc11_direct_relax_table): Make const. + (find_relaxable_insn, m68hc11_elf_relax_section): Adjust to suit. + * elf32-ppc.c (ppc_alt_plt): Make const. + * elf32-rl78.c (relax_addr16): Likewise. + * targets.c (_bfd_associated_vector): Likewise. + (bfd_target_vector, bfd_associated_vector): Likewise. + * libbfd-in.h (bfd_target_vector, bfd_associated_vector): Likewise. + * libbfd.h: Regenerate. + +2020-12-18 Alan Modra + + * ecoff.c (bfd_debug_section): Init using BFD_FAKE_SECTION. + (ecoff_scom_section, ecoff_scom_symbol): Statically init using + BFD_FAKE_SECTION and GLOBAL_SYM_INIT. Delete initialisation code. + * elf32-m32r.c (m32r_elf_scom_section, m32r_elf_scom_symbol), + * elf32-score.c (score_elf_scom_section, score_elf_scom_symbol), + * elf32-score7.c (score_elf_scom_section, score_elf_scom_symbol), + * elf32-tic6x.c (tic6x_elf_scom_section, tic6x_elf_scom_symbol), + * elf32-v850.c (v850_elf_scom_section, v850_elf_scom_symbol), + (v850_elf_tcom_section, v850_elf_tcom_symbol), + (v850_elf_zcom_section, v850_elf_zcom_symbol), + * elf64-mmix.c (mmix_elf_reg_section, mmix_elf_reg_section_symbol), + * elfxx-mips.c (mips_elf_scom_section, mips_elf_scom_symbol): Likewise. + +2020-12-16 Alan Modra + + * elfxx-target.h (elfNN_bed): Constify. + * bfd.c (bfd_elf_set_pagesize): Delete. + (bfd_emul_set_maxpagesize, bfd_emul_set_commonpagesize): Delete. + * elf.c (get_program_header_size): Get commonpagesize from + link info. + (_bfd_elf_map_sections_to_segments): Get maxpagesize from link info. + (assign_file_positions_for_load_sections): Likewise. + (assign_file_positions_for_non_load_sections): Likewise. + (rewrite_elf_program_header): Add maxpagesize param. Set map_p_align. + (copy_private_bfd_data): Don't call bfd_elf_set_maxpagesize. + Instead pass maxpagesize to rewrite_elf_program_header. + * elf32-nds32.c (relax_range_measurement): Add link_info param. + Get maxpagesize from link_info. Adjust caller. + * bfd-in2.h: Regenerate. + +2020-12-16 Alan Modra + + * elflink.c (elf_flags_to_names): Constify. + +2020-12-16 Alan Modra + + * libxcoff.h (struct xcoff_backend_data_rec): Constify + _xcoff_glink_code. + (XCOFF_RELOC_FUNCTION_ARGS, XCOFF_COMPLAIN_FUNCTION_ARGS): Delete. + (xcoff_reloc_function, xcoff_complain_function): New typedef. + (xcoff_calculate_relocation, xcoff_complain_overflow), + (xcoff_reloc_type_noop, xcoff_reloc_type_fail), + (xcoff_reloc_type_pos, xcoff_reloc_type_neg), + (xcoff_reloc_type_rel, xcoff_reloc_type_toc), + (xcoff_reloc_type_ba, xcoff_reloc_type_crel): Update declaration. + * coff-rs6000.c (xcoff_reloc_type_br): Declare using typedef. + (xcoff_complain_overflow_dont_func): Likewise. + (xcoff_complain_overflow_bitfield_func): Likewise. + (xcoff_complain_overflow_signed_func): Likewise. + (xcoff_complain_overflow_unsigned_func): Likewise. + (xcoff_calculate_relocation, xcoff_complain_overflow): Constify. + (xcoff_glink_code): Constify. + * coff64-rs6000.c (xcoff64_reloc_type_br): Declare using typedef. + (xcoff64_calculate_relocation, xcoff64_glink_code): Constify. + +2020-12-16 Alan Modra + + * elf32-xtensa.c (narrowable, widenable): Constify. + * xtensa-modules.c: Constify many arrays. + +2020-12-16 Alan Modra + + * elf64-ppc.c (synthetic_opd): Constify. + +2020-12-16 Alan Modra + + * arc-plt.h (plt_versions): Constify. + * elf32-arc.c (arc_get_plt_version): Constify return pointer, + adjust uses throughout. + +2020-12-16 Alan Modra + + * coffcode.h (pelength, peheader): Delete static variables. + (coff_apply_checksum): Instead, define them as auto vars, and pass.. + (coff_read_word, coff_compute_checksum): ..to here. Delete + unnecessary forward declarations. + * pei-x86_64.c (pdata_count): Delete static variable. + (struct pex64_paps): New. + (pex64_print_all_pdata_sections, pex64_bfd_print_pdata): Pass + a pex64_paps for counting. + * peicode.h (jtab): Constify. + +2020-12-15 Vivek Das Mohapatra + + * elflink.c (bfd_elf_size_dynamic_sections): Call + _bfd_elf_add_dynamic_entry to add a DT_GNU_FLAGS_1 section. + +2020-12-14 Alan Modra + + * elf-bfd.h (struct elf_obj_tdata): Add being_created. + * elf.c (bfd_section_from_shdr): Delete static vars for loop + detection. Use new tdata variable instead. + * elfcode.h (elf_object_p): Allocate being_created. + +2020-12-10 Nelson Chu + + * elfxx-riscv.c (riscv_ext_dont_care_version): New function. Return + TRUE if we don't care the versions of the extensions. These extensions + are added to the subset list for special purposes, with the explicit + versions or the RISCV_UNKNOWN_VERSION versions. + (riscv_parse_add_subset): If we do care the versions of the extension, + and the versions are unknown, then report errors for the non-implicit + extensions, and return directly for the implicit one. + (riscv_arch_str1): Do not output i extension after e, and the extensions + which versions are unknown. + +2020-12-07 Siddhesh Poyarekar + + PR 26945 + * opncls.c (bfd_fdopenw): New function. + * bfd-in2.h: Regenerate. + +2020-12-07 Alan Modra + + * elf32-csky.c (csky_relocate_contents): Correct negate test. + * cpu-ns32k.c (_bfd_do_ns32k_reloc_contents): Likewise. + * elf32-nds32.c (nds32_relocate_contents): Likewise. + +2020-12-05 Maciej W. Rozycki + + * elf32-vax.c (elf_vax_check_relocs) : Use + SYMBOL_REFERENCES_LOCAL rather than `h->forced_local' to check + whether the symbol referred is local or not. + +2020-12-04 H.J. Lu + + PR ld/27016 + * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Convert load + to mov only for GOTPCRELX relocations. + +2020-12-04 Alan Modra + + PR 26978 + * elflink.c (_bfd_elf_add_default_symbol): Handle the case where + a new weak sym@@ver should be overridden by an existing sym@ver. + (elf_link_add_object_symbols): Don't _bfd_elf_add_default_symbol + for a new weak sym@ver when sym@@ver already exists. + * linker.c (link_action): Choose MIND for previous indirect, + current def, rather than MDEF. + (_bfd_generic_link_add_one_symbol ): Handle redefinition of + weak indirect symbol. + +2020-12-01 Nelson Chu + + * elfxx-riscv.c (riscv_parse_prefixed_ext): Use riscv_compare_subsets + to check the Z* extensions' order. + +2020-12-01 Nelson Chu + + * elfxx-riscv.c (riscv_parse_add_subset): Allow to add g with + RISCV_UNKNOWN_VERSION versions. + (riscv_parse_std_ext): Add g to the subset list, we only use it + to add the implicit extensions, but won't output it to arch string. + (riscv_parse_add_implicit_subsets): Add implicit zicsr and zifencei + for g extension. + (riscv_arch_str1): Do not output g to the arch string. + * elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Moved to include/opcode/riscv.h. + +2020-12-01 Nelson Chu + + * elfnn-riscv.c (riscv_merge_std_ext): Updated since + riscv_lookup_subset is changed. + * elfxx-riscv.c (riscv_ext_order): New Array used to compare the + extensions' order quickly. + (riscv_init_ext_order): New function. Init the riscv_ext_order + according to the riscv_supported_std_ext and parse_config[i].class + automatically. + (riscv_compare_subsets): New function. Similar to the strcmp, but + compare the subsets with the specific order. + (riscv_lookup_subset): Return TRUE and set `current` to the subset + if it is found. Otherwise, return FALSE and set `current` to the + place where we should insert the subset. + (riscv_add_implicit_subset): New function. Search the list first, + and then find the right place to add the implicit_subset. + (riscv_parse_add_subset): Since We have to add all arch string + extensions first, and then start to add their implicit extensions. + We can add arch string extensions in order by the original + riscv_add_subset, and then add the implicit subsets by the + riscv_add_implicit_subset. Besides, do not add the implicit + extensions if we failed to find their default versions. + (riscv_parse_std_ext): Updated. + (riscv_parse_add_implicit_subsets): New function. Add all implicit + extensions according to the arch string extensions. + (riscv_parse_subset): Call riscv_init_ext_order and + riscv_parse_add_implicit_subsets, before and after parsing the + arch string. Remove parts of the ISA conflict checking since + the implicit extensions are added. + * elfxx-riscv.h (riscv_lookup_subset): Updated. + +2020-12-01 Nelson Chu + + * elfxx-riscv.c (riscv_lookup_subset): Moved to front. + (riscv_add_subset): Likewise. + (riscv_release_subset_list): Likewise. + (riscv_parse_add_subset): New function. Find and check the + versions before adding them by riscv_add_subset. + (riscv_parsing_subset_version): Remove use_default_version + and change the version type from unsigned to int. Set the + versions to RISCV_UNKNOWN_VERSION if we can not find them + in the arch string. + (riscv_parse_std_ext): Updated. + (riscv_parse_prefixed_ext): Updated. Since we use as_bad + rather than as_fatal to report more errors, return NULL + string if the parsed end_of_version is NULL, too. + (riscv_parse_subset): Use a new boolean, no_conflict, to + report more errors when we have more than one ISA conflicts. + * elfxx-riscv.h (RISCV_DONT_CARE_VERSION): Changed to + RISCV_UNKNOWN_VERSION. + (riscv_lookup_subset_version): Removed. + (riscv_parse_subset_t): Updated. + +2020-12-01 Nelson Chu + + * elfxx-riscv.c (riscv_parse_std_ext): Stop parsing standard + extensions when parsed h keyword. + (riscv_get_prefix_class): Support prefixed h class. + (riscv_std_h_ext_strtab): Likewise. + (riscv_ext_h_valid_p): Likewise. + (parse_config): Likewise. + (riscv_std_z_ext_strtab): Add zifencei. + * elfxx-riscv.h (riscv_isa_ext_class): Add RV_ISA_CLASS_H. + +2020-12-01 Nelson Chu + + * elfxx-riscv.c (riscv_parse_subset): ISA string cannot contain + any uppercase letter. + +2020-12-01 Nelson Chu + + * elfxx-riscv.c: Re-indent codes, unify and improve the error + messages and comments. + (riscv_parse_prefixed_ext): Stop parsing the prefixed class + extensions if the class is RV_ISA_CLASS_UNKNOWN, I get internal + errors before adding this check for march-fail-porder* testcases. + (riscv_parse_subset): Move the rv32 with q checking in front. + * elfxx-riscv.h: Likewise. + +2020-12-01 Alan Modra + + PR 26979 + * elf-bfd.h (elf_backend_merge_symbol_attribute): Update prototype. + * elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Likewise. + * elfxx-mips.h (_bfd_mips_elf_merge_symbol_attribute): Likewise. + * elfxx-x86.h (_bfd_x86_elf_merge_symbol_attribute): Likewise. + * elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): Replace + isym parameter with st_other. Adjust code. + * elf64-alpha.c (elf64_alpha_merge_symbol_attribute): Likewise. + * elf64-ppc.c (ppc64_elf_merge_symbol_attribute): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_merge_symbol_attribute): Likewise. + * elfxx-mips.c (_bfd_mips_elf_merge_symbol_attribute): Likewise. + * elfxx-x86.c (_bfd_x86_elf_merge_symbol_attribute): Likewise. + * elflink.c (elf_merge_st_other): Likewise. + (_bfd_elf_merge_symbol, elf_link_add_object_symbols): Adjust to suit. + (_bfd_elf_copy_link_hash_symbol_type): Likewise. + (_bfd_elf_add_default_symbol): Merge st_other from undecorated + symbol and @VER symbol to @@VER symbol. + +2020-11-28 Alan Modra + + PR 26907 + * elf.c (elf_sort_sections): Don't sort zero size !load sections + after load sections. + +2020-11-27 Jozef Lawrynowicz + + * elf.c (special_sections_g): Add .gnu.linkonce.n and .gnu.linkonce.p. + (special_sections_n): Add .noinit. + (special_sections_p): Add .persistent. + +2020-11-26 Nick Clifton + + PR 26946 + * dwarf2.c (read_section): Check for debug sections with excessive + sizes. + +2020-11-25 H.J. Lu + + PR ld/26936 + * elflink.c (_bfd_elf_check_kept_section): Get the real kept + section. + +2020-11-23 Nick Clifton + + PR 26931 + * elf-bfd.h (struct elf_backend_data): Add bfd_boolean field to + slurp_secondary_relocs field. + (_bfd_elf_slurp_secondary_reloc_section): Update prototype. + * elf.c (_bfd_elf_slurp_secondary_reloc_section): Add new + parameter. Compute number of symbols based upon the new + parameter. + * elfcode.h (elf_slurp_reloc_table): Pass dynamic as new + parameter. + +2020-11-23 H.J. Lu + + PR ld/26918 + * elf64-s390.c (elf_s390_finish_dynamic_sections): Set .got + sh_entsize only if .got size > 0. + +2020-11-21 Nelson Chu + + * elfnn-riscv.c (_bfd_riscv_relax_section): Add a new relax pass + to do the pcgp relaxation later, after the lui and call relaxations, + but before the delete and alignment relaxations. + +2020-11-20 Nick Alcock + + * elflink.c (elf_finalize_dynstr): Call examine_strtab after + dynstr finalization. + (elf_link_swap_symbols_out): Don't call it here. Call + ctf_new_symbol before swap_symbol_out. + (elf_link_output_extsym): Call ctf_new_dynsym before + swap_symbol_out. + (bfd_elf_final_link): Likewise. + * elf.c (swap_out_syms): Pass in bfd_link_info. Call + ctf_new_symbol before swap_symbol_out. + (_bfd_elf_compute_section_file_positions): Adjust. + +2020-11-19 Nick Clifton + + PR 26918 + * elf64-s390.c (elf_s390_finish_dynamic_sections): Check for the + existance of an sgot output section before setting the + sh_entsize. + +2020-11-18 Jozef Lawrynowicz + H.J. Lu + + * elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_retain. + (struct elf_obj_tdata): Increase has_gnu_osabi to 4 bits. + * elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_retain + for SHF_GNU_RETAIN. + (_bfd_elf_final_write_processing): Report if SHF_GNU_RETAIN is + not supported by the OSABI. + Adjust error messages. + * elflink.c (elf_link_input_bfd): Copy enabled has_gnu_osabi bits from + input BFD to output BFD. + (bfd_elf_gc_sections): gc_mark the section if SHF_GNU_RETAIN is set. + +2020-11-16 Przemyslaw Wirkus + + * cpu-arm.c (processors): Add Cortex-A78C. + +2020-11-11 Tom Tromey + + * archive.c (getuid, getgid): Move... + * sysdep.h (getuid, getgid): ...here. + +2020-11-09 Alan Modra + + * vms-alpha.c (alpha_vms_write_exec): Write 16 bits to eihd.alias. + +2020-11-09 Alan Modra + + * archive.c (bfd_ar_hdr_from_filesystem): Use bfd_set_input_error + when stat of archive member fails. + * coff-rs6000.c (xcoff_write_archive_contents_old), + (xcoff_write_archive_contents_big): Likewise, and handle in-memory + bfd. + +2020-11-03 Alan Modra + + * elf.c (bfd_section_from_shdr): Free sections_being_created. + Use bfd_zmalloc. + +2020-11-02 Alan Modra + + PR 15146 + PR 26314 + PR 26530 + PR 26806 + * elflink.c (elf_link_add_object_symbols): Don't set def/ref flags + for plugin syms. Do allow plugin syms to mark as-needed libs. + +2020-10-30 H.J. Lu + + PR gas/26703 + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Generate + GNU_PROPERTY_X86_ISA_1_BASELINE for -z x86-64-baseline. + +2020-10-29 Nick Clifton + + PR 26809 + * elf.c (_bfd_elf_slurp_secondary_reloc_section): Use the correct + sized reloc reading function. + (_bfd_elf_write_secondary_reloc_section): Use the correct sized + reloc writing function. + +2020-10-28 Nick Clifton + + PR 26774 + * srec.c (srec_write_symbols): Do not emit symbols in sections + that have been removed from the output. + +2020-10-27 Nick Clifton + + * elf64-hppa.c (elf_hppa_final_link_relocate): Check that the + symbol's section is being output before adding its offset to the + addend when processing R_PARISC_SECREL32. + +2020-10-25 Alan Modra + + * vms-misc.c (_bfd_vms_save_counted_string): Count length byte + towards maxlen. + +2020-10-20 Dr. David Alan Gilbert + + * po/es.po: Fix printf format. + +2020-10-16 Nelson Chu + + * elfnn-riscv.c (riscv_elf_link_hash_table): Add last_iplt_index. + (riscv_elf_size_dynamic_sections): Initialize the last_iplt_index. + (riscv_elf_relocate_section): Use riscv_elf_append_rela. + (riscv_elf_finish_dynamic_symbol): If the use_elf_append_rela is + false, then we should add the dynamic relocs from the last of + the .rela.iplt, and don't use the riscv_elf_append_rela to add. + +2020-10-16 Nelson Chu + + * elfnn-riscv.c: Include "objalloc.h" since we need objalloc_alloc. + (riscv_elf_link_hash_table): Add loc_hash_table and loc_hash_memory + for local STT_GNU_IFUNC symbols. + (riscv_elf_got_plt_val): Removed. + (riscv_elf_local_htab_hash, riscv_elf_local_htab_eq): New functions. + Use to compare local hash entries. + (riscv_elf_get_local_sym_hash): New function. Find a hash entry for + local symbol, and create a new one if needed. + (riscv_elf_link_hash_table_free): New function. Destroy an riscv + elf linker hash table. + (riscv_elf_link_hash_table_create): Create hash table for local ifunc. + (riscv_elf_check_relocs): Create a fake global symbol to track the + local ifunc symbol. Add support to check and handle the relocations + reference to ifunc symbols. + (allocate_dynrelocs): Let allocate_ifunc_dynrelocs and + allocate_local_ifunc_dynrelocs to handle the ifunc symbols if they + are defined and referenced in a non-shared object. + (allocate_ifunc_dynrelocs): New function. Allocate space in .plt, + .got and associated reloc sections for ifunc dynamic relocs. + (allocate_local_ifunc_dynrelocs): Likewise, but for local ifunc + dynamic relocs. + (riscv_elf_relocate_section): Add support to handle the relocation + referenced to ifunc symbols. + (riscv_elf_size_dynamic_sections): Updated. + (riscv_elf_adjust_dynamic_symbol): Updated. + (riscv_elf_finish_dynamic_symbol): Finish up the ifunc handling, + including fill the PLT and GOT entries for ifunc symbols. + (riscv_elf_finish_local_dynamic_symbol): New function. Called by + riscv_elf_finish_dynamic_symbol to handle the local ifunc symbols. + (_bfd_riscv_relax_section): Don't do the relaxation for ifunc. + * elfxx-riscv.c: Add R_RISCV_IRELATIVE. + * configure.ac: Link elf-ifunc.lo to use the generic ifunc support. + * configure: Regenerated. + +2020-10-16 Alan Modra + + * elf32-arc.c (replace_func): Correct return type. + (get_replace_function): Use a replace_func function pointer rather + than void*. Update associated ARC_RELOC_HOWTO define. + +2020-10-16 Alan Modra + + * elf32-cr16.c: Formatting. + (cr16_elf_final_link_relocate): Sign extend rather than clumsy + "add or subtract" of offset value. Simplify range checks. Move + common code out of "if" branches. Don't refetch insn fields + needlessly. + +2020-10-16 Alan Modra + + * elf64-ppc.c (ppc64_elf_relocate_section): Tighten sanity check + on R_PPC64_GOT_LO_DS and R_PPC64_GOT_HA instructions. + +2020-10-09 Alan Modra + + * elf64-ppc.c (write_plt_relocs_for_local_syms): Don't do local + entry offset optimisation. + +2020-10-09 H.J. Lu + + PR gas/26703 + * elf-linker-x86.h (elf_linker_x86_params): Add isa_level. + * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Merge + GNU_PROPERTY_X86_ISA_1_V[234]. + (_bfd_x86_elf_link_setup_gnu_properties): Generate + GNU_PROPERTY_X86_ISA_1_V[234] for -z x86-64-v[234]. + +2020-10-06 H.J. Lu + + PR ld/26711 + * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Merge -z ibt + and -z shstk only with GNU_PROPERTY_X86_FEATURE_1_AND. + +2020-10-06 Brandon Bergren + + * config.bfd: Add powerpc64le-*-freebsd*. + * configure.ac: Add powerpc_elf64_fbsd_le_vec. + * elf64-ppc.c (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Define for + freebsd. + * targets.c (powerpc_elf64_fbsd_le_vec): Declare. + (_bfd_target_vector): Add it. + * configure: Regenerate. + +2020-10-05 Kamil Rytarowski + + * config.bfd (aarch64-*-netbsd*, aarch64_be-*-netbsd*): Add target. + +2020-10-05 Nick Clifton + + PR 26253 + * elf.c (_bfd_elf_setup_sections): Do not complain about an + sh_link value of zero when the SLF_LINK_ORDER flag is set. + (assign_section_numbers): Likewise. + +2020-10-02 H.J. Lu + + PR 26681 + * elflink.c (bfd_elf_gc_sections): Do not arbitrarily keep note + sections which are linked to another section. + +2020-09-30 Przemyslaw Wirkus + + * cpu-arm.c: Add cortex-a78 and cortex-a78ae. + +2020-09-28 Przemyslaw Wirkus + + * cpu-arm.c: (processors) Add Cortex-X1. + +2020-09-28 Alan Modra + + PR 26656 + * elf64-ppc.c (ppc_build_one_stub, ppc_size_one_stub): Check for + NULL stub_entry->h before calling is_tls_get_addr. + +2020-09-26 Alan Modra + + * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Depend on has_plt_localentry0. + (LD_R0_0R11, ADD_R11_R0_R11): Define. + (ppc64_elf_tls_setup): Disable params->plt_localentry0 when power10 + code detected. + (ppc64_elf_size_stubs): Update __glink_PLTresolve eh_frame. + (ppc64_elf_build_stubs): Move r2 save to start of __glink_PLTresolve, + and only emit for has_plt_localentry0. Don't use r2 in the stub. + +2020-09-24 Alan Modra + + PR 26656 + * elf64-ppc.c (plt_stub_size): Add "odd" param. Use it with + size_power10_offset rather than calculating from start of stub. + Add size for notoc tls_get_addr_opt stub. + (plt_stub_pad): Add "odd" param, pass to plt_stub_size. + (build_tls_get_addr_head, build_tls_get_addr_tail): New functions. + (build_tls_get_addr_stub): Delete. + (ppc_build_one_stub): Use a temp for htab->params->stub_bfd. + Emit notoc tls_get_addr_opt stub. Move eh_frame code to + suit. Adjust code to use bfd_tls_get_addr_head/tail in place + of build_tls_get_addr_stub. + (ppc_size_one_stub): Size notoc tls_get_addr_opt stub. + Adjust plt_stub_size and plt_stub_pad calls. Correct "odd" + when padding stub. Size eh_frame for notoc stub too. + Correct lr_restore value. + (ppc64_elf_relocate_section): Don't skip over first insn of + notoc tls_get_addr_opt stub. + +2020-09-24 Alan Modra + + PR 26655 + * elf64-ppc.c (ppc64_elf_func_desc_adjust): Rename to.. + (ppc64_elf_edit): Call params->edit. + (ppc64_elf_tls_setup): Don't call _bfd_elf_tls_setup. Return a + bfd_boolean. + * elf64-ppc.h (struct ppc64_elf_params): Add "edit". + (ppc64_elf_tls_setup): Update declaration. + +2020-09-21 Alan Modra + + PR 26569 + * elfxx-riscv.c (howto_table): Correct size and bitsize of + R_RISCV_RVC_BRANCH, R_RISCV_RVC_JUMP, and R_RISCV_RVC_LUI. + Correct size for R_RISCV_TLS_DTPMOD32, R_RISCV_TLS_DTPREL32, + R_RISCV_CALL, and R_RISCV_CALL_PLT. Make R_RISCV_TPREL_ADD and + R_RISCV_ALIGN like R_RISCV_NONE. Correct dst_mask many relocs. + +2020-09-17 Mikael Pettersson + + PR ld/18808 + * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Skip IFUNC + relocations in debug sections, change abort to _bfd_error_handler. + +2020-09-16 H.J. Lu + + PR ld/26583 + * config.bfd (targ64_selvecs, targ_selvecs): Add x86_64_pe_vec + to x86_64_pei_vec. + * reloc.c: Include "coff/internal.h". + (bfd_perform_relocation): Adjust relocation for PE/x86-64 inputs. + +2020-09-16 Alan Modra + + * elf-bfd.h (elf_symbol_from): Remove unused ABFD parameter. + * elf.c (ignore_section_sym, _bfd_elf_copy_private_symbol_data), + (swap_out_syms): Adjust elf_symbol_from invocation. + +2020-09-16 Alan Modra + + PR 26623 + * elf-bfd.h (elf_symbol_from): Exclude synthetic symbols. + +2020-09-15 H.J. Lu + + * coff-x86_64.c (howto_table): Display PE relocation names. + +2020-09-15 Hans-Peter Nilsson + + PR ld/26589 + * elf32-cris.c (cris_elf_check_relocs): Add missing NULL check + on argument before calling UNDEFWEAK_NO_DYNAMIC_RELOC. + +2020-09-12 H.J. Lu + + PR ld/26391 + * elflink.c (elf_final_link_info): Add local_hash_table. + (local_hash_entry): New. + (local_hash_newfunc): Likewise. + (elf_link_output_symstrtab): Append ".COUNT" to duplicated local + symbols. + (bfd_elf_final_link): Initialize and free local_hash_table for + "-z unique-symbol". + +2020-09-10 Siddhesh Poyarekar + + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Revert + changes in 7e05773767820b441b23a16628b55c98cb1aef46. Set + error for undefined symbol in BFD_RELOC_AARCH64_BRANCH19 and + BFD_RELOC_AARCH64_TSTBR14 relocations. + +2020-09-09 Nick Clifton + + * cofflink.c (coff_link_check_archive_element): Move the check for + coff type input to the start of the function. + +2020-09-09 Alan Modra + + * libbfd-in.h (_bfd_write_unsigned_leb128): Declare. + * libbfd.h: Regenerate. + +2020-09-08 Jozef Lawrynowicz + Kuan-Lin Chen + + * bfd-in2.h (bfd_reloc_code_real): Add + BFD_RELOC_MSP430_{SET,SUB}_ULEB128. + * elf32-msp430.c (msp430_elf_ignore_reloc): New. + (elf_msp430_howto_table): Add R_MSP430{,X}_GNU_{SET,SUB}_ULEB128. + (msp430_reloc_map): Add R_MSP430_GNU_{SET,SUB}_ULEB128. + (msp430x_reloc_map): Add R_MSP430X_GNU_{SET,SUB}_ULEB128. + (write_uleb128): New. + (msp430_final_link_relocate): Handle R_MSP430{,X}_GNU_{SET,SUB}_ULEB128. + * libbfd.c (_bfd_write_unsigned_leb128): New. + * libbfd.h (_bfd_write_unsigned_leb128): New prototype. + Add BFD_RELOC_MSP430_{SET,SUB}_ULEB128. + * reloc.c: Document BFD_RELOC_MSP430_{SET,SUB}_ULEB128. + +2020-09-08 Alex Coplan + + * archures.c (bfd_mach_aarch64_8R): New. + * bfd-in2.h: Regenerate. + * cpu-aarch64.c (bfd_aarch64_arch_v8_r): New. + (bfd_aarch64_arch_ilp32): Update tail pointer. + +2020-09-08 Alan Modra + + PR 13250 + PR 26580 + * elflink.c (_bfd_elf_merge_symbol): Make "override" a bfd**. + Return oldbfd in override when old common should override new + common. + (_bfd_elf_add_default_symbol): Adjust to suit. + (elf_link_add_object_symbols): Likewise. Pass "override" to + _bfd_generic_link_add_one_symbol. Save and restore common u.c.p + field for --as-needed shared libraries. Revert pr13250 changes. + +2020-09-08 Nick Clifton + + * plugin.c (bfd_plugin_canonicalize_symtab): Handle the case of an + unrecognized symbol type in a weak definition. + +2020-09-04 Alan Modra + + PR 26574 + * elfcode.h (elf_object_p): Sanity check section header offset. + * elf.c (_bfd_elf_slurp_secondary_reloc_section): Sanity check + sh_entsize. + +2020-09-04 Alan Modra + + PR 15146 + PR 26314 + PR 26530 + * elflink.c (elf_link_add_object_symbols): Do set def_regular + and ref_regular for IR symbols. Don't clear dynsym, allowing + IR symbols to load --as-needed shared libraries, but prevent + IR symbols from becoming dynamic. + +2020-09-03 Nick Clifton + + PR 26521 + * elf.c (_bfd_elf_write_secondary_reloc_section): Check for + secondary reloc sections with a zero sh_entsize field. + +2020-09-03 Nelson Chu + + * elfnn-riscv.c (riscv_i_or_e_p): Minor cleanup for warnings/errors. + (riscv_merge_std_ext): Likewise. + (riscv_merge_arch_attr_info): Likewise. + (riscv_merge_attributes): Likewise and fix comment typos. + +2020-09-03 Nelson Chu + + * elfnn-riscv.c (riscv_version_mismatch): Change the return type + from void to bfd_boolean. Report warnings rather than errors + when the ISA versions are mis-matched. Afterwards, remember to + update the output ISA versions to the newest ones. + (riscv_merge_std_ext): Allow to link objects with different + standard ISA versions. Try to add output ISA versions to + merged_subsets first. + (riscv_merge_multi_letter_ext): Likewise. But for standard additional + ISA and non-standard ISA versions. + +2020-09-03 Kito Cheng + + * elfnn-riscv.c (riscv_merge_std_ext): Fix to report the correct + error message when the versions of extension are mis-matched. + * elfxx-riscv.c (riscv_parse_subset): Don't issue the error when + the string is empty. + +2020-09-03 Alan Modra + + * xcofflink.c (xcoff_get_archive_info): Allocate xcoff_archive_info + on the output bfd objalloc memory. + +2020-09-02 Alan Modra + + * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Correct type + of constant shifted left. + +2020-09-02 Alan Modra + + * elf32-pru.c (pru_elf32_do_ldi32_relocate): Use an unsigned + type for "relocation". + +2020-09-01 Alan Modra + + * reloc.c (N_ONES): Handle N=0. + * elf32-arm.c (elf32_arm_howto_table_1): Set complain_overflow_dont + for R_ARM_TLS_DESCSEQ and R_ARM_THM_TLS_DESCSEQ. + +2020-09-01 Alan Modra + + PR 26429 + * elf32-arm.c (elf32_arm_allocate_local_sym_info): Allocate arrays + in descending order of alignment. + +2020-09-01 Alan Modra + + PR 26423 + * elf32-arm.c (calculate_group_reloc_mask): Use 3u in shift. + +2020-08-31 Alan Modra + + PR 26493 + * elfnn-riscv.c (riscv_make_plt_header): Cast PLT_HEADER_SIZE to + unsigned when using with RISCV_ITYPE. + (_bfd_riscv_relax_call): Use an unsigned foff. + +2020-08-31 Alan Modra + + PR 26476 + PR 26477 + * elfxx-mips.c (CRINFO_CTYPE, CRINFO_RTYPE, CRINFO_DIST2TO), + (CRINFO_RELVADDR): Make unsigned. + (mips_elf_nullify_got_load): Use unsigned constant when shifting + into sign bit. + +2020-08-31 Alan Modra + + PR 26466 + * mep-relocs.pl (emit_apply): Handle HI16S adjustment. Use "u" + variable and rewrite signed overflow check. + * elf32-mep.c: Regenerate. + (mep_final_link_relocate): Delete "s". + +2020-08-31 Alan Modra + + PR 26461 + * elfxx-ia64.c (ia64_elf_install_value): Make expressions unsigned + that might shift values into sign bit. + +2020-08-31 Alan Modra + + PR 26445 + * elf32-csky.c (csky_relocate_contents): Make relocation a bfd_vma, + and similarly for variables dealing with overflow. + +2020-08-31 Alan Modra + + PR 26442 + * elf32-crx.c (crx_elf_final_link_relocate): Calculate reloc_bits + without undefined behaviour. Tidy excess casts. + +2020-08-31 Alan Modra + + * elf-m10300.c (mn10300_elf_relax_delete_bytes): Calculate + alignment from reloc addend after reloc type R_MN10300_ALIGN is + found. + +2020-08-30 Alan Modra + + PR 26435 + PR 26436 + * elf32-cr16.c (cr16_elf_final_link_relocate): Calculate reloc_bits + without undefined behaviour. + +2020-08-29 Nick Clifton + + PR 26520 + * dwarf2.c (scan_unit_for_symbols): Add member entries to the + variable table. + +2020-08-29 Alan Modra + + PR 26459 + * elfnn-ia64.c (get_dyn_sym_info): Don't bsearch or look at last + element when count is zero. bfd_realloc when shrinking. + +2020-08-28 Alan Modra + + PR 26418 + * ecofflink.c (bfd_ecoff_write_accumulated_debug): Don't write + zero size buffers. + +2020-08-28 Alan Modra + + PR 26418 + * ecofflink.c (WRITE): Really don't write zero size chunks. + +2020-08-28 Tuckker + + PR 26543 + * linker.c (bfd_generic_define_common_symbol): Force the alignment + to 1 if the section has now alignment requirement. + +2020-08-28 Cooper Qu + + * elf32-csky.c (csky_archs): Fix arch names. + (csky_find_arch_with_name): New. + (elf32_csky_merge_attributes): New. + (csky_elf_merge_private_bfd_data): Add process of merge + attribute section. + (elf32_csky_obj_attrs_arg_type): New. + (elf32_csky_obj_attrs_handle_unknown): New. + (elf_backend_obj_attrs_vendor): Define. + (elf_backend_obj_attrs_section): Define. + (elf_backend_obj_attrs_arg_type): Define. + (elf_backend_obj_attrs_section_type): Define. + +2020-08-28 Nick Clifton + + PR19011 + * cofflink.c (_bfd_coff_generic_relocate_section): Provide a value + for undefined symbols which will not generate extra warning + messages about truncated relocs. + +2020-08-28 Nelson Chu + + * elfnn-riscv.c (riscv_elf_check_relocs): Treat R_RISCV_CALL + and R_RISCV_CALL_PLT as the same in the riscv_elf_check_relocs. + (riscv_elf_relocate_section): Remove the R_RISCV_CALL for the + unresolved reloc checks. + +2020-08-27 John David Anglin + + PR 26356 + * som.c (som_bfd_copy_private_section_data): Issue error when a + subspace is specified without its containing space. + +2020-08-27 Alan Modra + + PR 26469 + * elflink.c: Include limits.h. + (CHAR_BIT): Provide fallback define. + (set_symbol_value): Correct complex reloc comment. + (undefined_reference): Set bfd_error. + (BINARY_OP_HEAD, BINARY_OP_TAIL): Split out from.. + (BINARY_OP): ..this. + (eval_symbol): Limit shifts. Force unsigned for left shift. + Catch divide by zero. + * configure.ac (AC_CHECK_HEADERS): Combine, sort and add limits.h. + * configure: Regenerate. + * config.in: Regenerate. + +2020-08-27 Alan Modra + + PR 26462 + * reloc.c (bfd_check_overflow): Return early if zero bitsize. + +2020-08-27 Alan Modra + + * elf32-arm.c (elf32_arm_final_link_relocate): Don't segfault + on sym_sec not being output. + +2020-08-27 Alan Modra + + PR 26416 + * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Correct "dynamic". + +2020-08-26 Nick Clifton + + PR 26433 + * elf32-avr.c (avr_final_link_relocate): Fix undefined shift + behaviour. + (avr_elf32_load_records_from_section): Use bfd_get_16 and + bfd_get_32 to load values from potentially unaligned pointers. + + PR 26416 + * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Test for and + ignore local symbols. + (elf64_alpha_relax_got_load): Do not check for local dynamic + symbols. + (OP_LDA, OP_LDAH, OP_LDQ, OP_BR, OP_BSR): Use unsigned constant + values. + (INSN_A) Cast the A parameter to unsigned. + (INSN_AB): Define in terms of INSN_A. + (INSN_ABC): Likewise. + (INSN_ABO): Likewise. + (INSN_AD): Likewise. + + PR 26411 + * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Use an + unsigned long constant when creating a mask to test for alignment + issues. + +2020-08-26 Alan Modra + + PR 26507 + * elf32-xtensa.c (find_removed_literal): Don't bsearch empty map. + +2020-08-26 Alan Modra + + PR 26506 + * elf32-xtensa.c (elf_xtensa_combine_prop_entries): Return early + when section is empty. + +2020-08-26 Alan Modra + + PR 26498 + * elf32-spu.c (find_function_stack_adjust): Use unsigned vars to + avoid UB left shift. + +2020-08-26 Alan Modra + + PR 26484 + PR 26485 + PR 26486 + PR 26487 + PR 26488 + PR 26490 + * elf64-ppc.c (is_tls_get_addr): Avoid UB &h->elf when h is NULL. + (ppc64_elf_tls_setup): Likewise. + (branch_reloc_hash_match): Likewise. + (build_plt_stub): Likewise. + (ppc64_elf_relocate_section): Likewise. + +2020-08-26 Alan Modra + + PR 26478 + * mmo.c (mmo_write_symbols_and_terminator): Don't memcpy empty table. + +2020-08-26 Alan Modra + + PR 26475 + * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Check + sstubs->contents != NULL. + +2020-08-26 Alan Modra + + PR 26453 + * som.c (som_prep_for_fixups): Return early when no symbols. + +2020-08-26 Alan Modra + + PR 26418 + * ecofflink.c (WRITE): Don't write size 0 chunks. + +2020-08-26 Alan Modra + + * bfdio.c (bfd_get_file_size): Don't segv on NULL adata. + +2020-08-26 Alan Modra + + PR 26415 + * vms-misc.c (vms_time_t_to_vms_time): Don't use unsigned short vars. + +2020-08-26 David Faust + + * archures.c (bfd_mach_xbpf): Define. + * bfd-in2.h: Regenerate. + * cpu-bpf.c (bfd_xbpf_arch) New. + (bfd_bpf_arch) Update next in list field to point to xbpf arch. + +2020-08-26 Alan Modra + + * archures.c (bfd_mach_ck860): Define. + +2020-08-25 Mark Wielaard + + * dwarf2.c (struct dwarf2_debug_file): Add dwarf_rnglists_buffer + and dwarf_rnglists_size fields. + (dwarf_debug_sections): Add debug_rnglists. + (dwarf_debug_section_enum): Likewise. + (read_debug_rnglists): New function. + (read_rangelist): New function to call either read_ranges or + read_rnglists. Rename original function to... + (read_ranges): ...this. + (read_rnglists): New function. + +2020-08-25 Alan Modra + + PR 26505 + * elf32-xstormy16.c (xstormy16_elf_relax_section): Check + is_elf_hash_table before accessing elf fields. + +2020-08-25 Alan Modra + + PR 26482 + * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Ignore sections that + won't be output. + +2020-08-25 Alan Modra + + PR 26463 + * elf32-m32c.c (m32c_elf_relax_section): Check is_elf_hash_table + before accessing elf fields. + +2020-08-25 Alan Modra + + PR 26452 + * som.c (som_compute_checksum): XOR 32-bit words in header, + not unsigned long sized words. + +2020-08-25 Alan Modra + + PR 26430 + * elf-nacl.c (nacl_modify_segment_map): Correct alloc size and + amount copied for elf_segment_map defined with one element + sections array. + +2020-08-25 Alan Modra + + PR 26422 + * elf32-arm.c (elf32_arm_final_link_relocate): Use the appropriate + bfd_get_x size function to read addends out of fields. Apply + rightshift adjustment too. Don't apply the now unnecessary + howto->size shift to branch REL addends. Don't refetch R_ARM_ABS8 + and R_ARM_ABS16 addends. Don't refetch thumb branch addends. + Correct R_ARM_THM_JUMP6 addend. + +2020-08-25 Alan Modra + + PR 26419 + * elf-m10300.c (mn10300_elf_relax_section): Don't attempt access + before start of section. + +2020-08-25 Alan Modra + + * elf-m10300.c (elf32_mn10300_hash_table): Test is_elf_hash_table + before accessing elf_hash_table_id. + * elf32-arc.c (elf_arc_hash_table): Likewise. + * elf32-arm.c (elf32_arm_hash_table): Likewise. + * elf32-avr.c (avr_link_hash_table): Likewise. + * elf32-bfin.c (bfinfdpic_hash_table): Likewise. + * elf32-cris.c (elf_cris_hash_table): Likewise. + * elf32-csky.c (csky_elf_hash_table): Likewise. + * elf32-frv.c (frvfdpic_hash_table): Likewise. + * elf32-hppa.c (hppa_link_hash_table): Likewise. + * elf32-lm32.c (lm32_elf_hash_table): Likewise. + * elf32-m32r.c (m32r_elf_hash_table): Likewise. + * elf32-m68hc1x.h (m68hc11_elf_hash_table): Likewise. + * elf32-m68k.c (elf_m68k_hash_table): Likewise. + * elf32-metag.c (metag_link_hash_table): Likewise. + * elf32-microblaze.c (elf32_mb_hash_table): Likewise. + * elf32-nds32.h (nds32_elf_hash_table): Likewise. + * elf32-or1k.c (or1k_elf_hash_table): Likewise. + * elf32-s390.c (elf_s390_hash_table): Likewise. + * elf32-sh.c (sh_elf_hash_table): Likewise. + * elf32-spu.c (spu_hash_table): Likewise. + * elf32-tilepro.c (tilepro_elf_hash_table): Likewise. + * elf32-xtensa.c (elf_xtensa_hash_table): Likewise. + * elf64-alpha.c (alpha_elf_hash_table): Likewise. + * elf64-hppa.c (hppa_link_hash_table): Likewise. + * elf64-ia64-vms.c (elf64_ia64_hash_table): Likewise. + * elf64-s390.c (elf_s390_hash_table): Likewise. + * elfnn-ia64.c (elfNN_ia64_hash_table): Likewise. + * elfnn-riscv.c (riscv_elf_hash_table): Likewise. + * elfxx-mips.c (mips_elf_hash_table): Likewise. + * elfxx-sparc.h (_bfd_sparc_elf_hash_table): Likewise. + * elfxx-tilegx.c (tilegx_elf_hash_table): Likewise. + +2020-08-21 Jon Turney + + * elf.c (elfcore_grok_win32pstatus): Change name_size to unsigned + int. Use '%u' format with _bfd_error_handler to render it. + +2020-08-25 Alan Modra + + PR 26489 + * elf64-ppc.c (ppc64_elf_size_stubs): Test code_sec->has_toc_reloc + and code_sec->makes_toc_func_call before sec_info[code_sec->id]. + +2020-08-25 Alan Modra + + PR 26492 + * elf64-ppc.c (ppc_hash_table): Test is_elf_hash_table before + accessing elf_hash_table_id. + +2020-08-25 Alan Modra + + PR 26483 + * elf32-ppc.c (ppc_elf_hash_table): Test is_elf_hash_table before + accessing elf_hash_table_id. + +2020-08-24 Mark Wielaard + + * dwarf2.c (read_attribute_value): Handle DW_FORM_data16. + (read_formatted_entries): Likewise. And skip zero entry. + +2020-08-24 Cooper Qu + + * bfd-in2.h (bfd_mach_ck860): New. + * cpu-csky.c (arch_info_struct): Add item for CK860. + +2020-08-24 Alan Modra + + * elf32-ppc.c (ppc_elf_check_relocs): Set has_tls_reloc for + high part tprel16 relocs. + (ppc_elf_tls_optimize): Sanity check high part tprel16 relocs. + Clear do_tls_opt on odd instructions. + (ppc_elf_relocate_section): Move TPREL16_HA/LO optimisation later. + Don't sanity check them here. + * elf64-ppc.c (ppc64_elf_check_relocs): Set has_tls_reloc for + high part tprel16 relocs. + (ppc64_elf_tls_optimize): Sanity check high part tprel16 relocs. + Clear do_tls_opt on odd instructions. + (ppc64_elf_relocate_section): Don't sanity check TPREL16_HA. + +2020-08-23 John David Anglin + + PR binutils/26357 + * configure.ac: Disable plugins by default on 32-bit hppa*-*-hpux*. + * configure: Regenerate. + +2020-08-22 H.J. Lu + + PR ld/26382 + * elflink.c (elf_link_output_symstrtab): Keep only one '@' for + versioned symbols, which are defined in shared objects, in + symbol string table. + +2020-08-21 Nick Clifton + + * elfnn-aarch64.c (_bfd_aarch64_erratum_835769_scan): Only sort + the data map if there are entries in it. + (_bfd_aarch64_erratum_843419_scan): Likewise. + +2020-08-21 Jan Beulich + + * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Check + last byte of debug dir, not first. + +2020-08-20 Nick Clifton + + PR 26428 + * bfd.c (bfd_update_compression_header): Also set the sh_addralign + field in the ELF header of the compressed sections. + +2020-08-20 Nick Clifton + + PR 26406 + * elf-bfd.h (struct bfd_elf_section_data): Add + has_secondary_relocs field. + * elf.c (_bfd_elf_copy_special_section_fields): Set the + has_secondary_relocs field for sections which have associated + secondary relocs. + * elfcode.h (elf_write_relocs): Only call write_secondary_relocs + on sections which have associated secondary relocs. + +2020-08-15 Alan Modra + + * elf32-frv.c (elf32_frv_add_symbol_hook): Set SEC_SMALL_DATA on + small common section. + * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise. + * elf32-microblaze.c (microblaze_elf_add_symbol_hook): Likewise. + * elf32-nds32.c (nds32_elf_add_symbol_hook): Likewise. + * elf32-nios2.c (nios2_elf_add_symbol_hook): Likewise. + * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise. + * elf32-score.c (s3_bfd_score_elf_add_symbol_hook): Likewise. + * elf32-score7.c (s7_bfd_score_elf_add_symbol_hook): Likewise. + * elf32-tic6x.c (elf32_tic6x_add_symbol_hook): Likewise. + * elf32-v850.c (v850_elf_check_relocs): Likewise. + (v850_elf_add_symbol_hook): Likewise. + * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise. + * elf64-ia64-vms.c (elf64_ia64_add_symbol_hook): Likewise. + * elfnn-ia64.c (elfNN_ia64_add_symbol_hook): Likewise. + * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Likewise. + +2020-08-15 Alan Modra + + PR 26389 + * syms.c (bfd_decode_symclass): Choose 'c' for commons only when + SEC_SMALL_DATA. + * elf32-m32r.c (_bfd_m32r_elf_symbol_processing): Set SEC_SMALL_DATA + on small common section. + * elf32-score.c (s3_bfd_score_elf_symbol_processing): Likewise. + * elf32-score7.c (s7_bfd_score_elf_symbol_processing): Likewise. + * elf32-tic6x.c (elf32_tic6x_symbol_processing): Likewise. + * elf32-v850.c (v850_elf_symbol_processing): Likewise. + * elfxx-mips.c (_bfd_mips_elf_symbol_processing): Likewise. + * ecoff.c (ecoff_set_symbol_info, ecoff_link_add_externals): Likewise. + +2020-08-14 Alan Modra + + * hash.c (bfd_hash_set_default_size): Use higher_prime_number + rather than another copy of primes. Increase maximum default + size allowed. + +2020-08-13 Alan Modra + + * config.bfd: Obsolete arm*-*-symbianelf*, and ia64*-*-*. + +2020-08-13 Alan Modra + + * elf64-ppc.h (struct ppc64_elf_params): Add no_pcrel_opt. + * elf64-ppc.c (ppc64_elf_relocate_section): Disable GOT reloc + optimizations when --no-toc-optimize. Disable R_PPC64_PCREL_OPT + optimization when --no-pcrel-optimize. + +2020-08-13 Alan Modra + + PR 26348 + * bfd.c (struct bfd): Add read_only. + * elfcode.h (elf_swap_shdr_in): Test both sh_offset and sh_size. + Set read_only on warning. + (elf_object_p): Sanity check program header alignment. Set + read_only on warning. + * bfd-in2.h: Regenerate. + +2020-08-12 Jon Turney + + * elf.c (elfcore_grok_win32pstatus): Use unsigned int for + win32pstatus note type to avoid signedness comparison warning. + +2020-07-21 Jon Turney + + * elf.c (elfcore_grok_win32pstatus): Warn on malformed + win32pstatus notes, and return TRUE so we continue rather than + stopping as if it was an error. + +2020-07-01 Jon Turney + + * elf.c (elfcore_grok_win32pstatus): Handle NOTE_INFO_MODULE64. + +2020-07-11 Jon Turney + + * elf.c (elfcore_grok_win32pstatus): Don't apply size constraint + for NOTE_INFO_THREAD to all win32pstatus ELF notes, instead apply + appropriate size constraint for each win32pstatus note type. + +2020-07-01 Jon Turney + + * elf.c (elfcore_grok_win32pstatus): Don't hardcode the size of + the Win32 API thread CONTEXT type read from a NOTE_INFO_THREAD + win32pstatus note. + +2020-07-11 Jon Turney + + * elf.c (NOTE_INFO{_PROCESS,_THREAD,_MODULE}): Define. + (elfcore_grok_win32pstatus): Use. + +2020-07-01 Jon Turney + + * elf.c (elfcore_grok_win32pstatus): Fix the offset used to read + the tid from a win32pstatus NOTE_INFO_THREAD ELF note. Fix + offsets used to read NOTE_INFO_PROCESS. + +2020-08-12 Nick Clifton + + * po/ru.po: Updated Russian translation. + * po/sr.po: Updated Serbian translation. + +2020-08-07 David Faust + + * elf64-bpf.c (bpf_elf_relocate_section): Ensure signed division for + DISP16 and DISP32 relocations. + +2020-08-05 David Faust + + * elf64-bpf.c (bpf_elf_generic_reloc): New function. + (bpf_elf_howto_table): Use it here. + (bpf_elf_relocate_section): Use addends recorded in input_bfd for + instruction and data relocations. + +2020-08-03 Alan Modra + + * vms-lib.c (vms_traverse_index): Sanity check size remaining + before accessing vms_idx or vms_elfidx. + +2020-08-03 Alan Modra + + PR 26330 + * elf.c (_bfd_elf_get_symtab_upper_bound): Sanity check symbol table + size against file size. Correct LONG_MAX limit check. + (_bfd_elf_get_dynamic_symtab_upper_bound): Likewise. + (_bfd_elf_get_reloc_upper_bound): Don't check file size if writing. + (_bfd_elf_get_dynamic_reloc_upper_bound): Likewise. + * elf64-x86-64-.c (elf_x86_64_get_synthetic_symtab): Use + bfd_malloc_and_get_section. + +2020-07-31 Alan Modra + + PR 26314 + * elflink.c (bfd_elf_link_record_dynamic_symbol): Don't allow + IR symbols to become dynamic. + (elf_link_add_object_symbols): Don't exclude IR symbols when + deciding whether an as-needed shared library is needed. + +2020-07-30 Szabolcs Nagy + + PR ld/26312 + * elfnn-aarch64.c (elfNN_aarch64_init_small_plt0_entry): Set sh_entsize + to 0. + (elfNN_aarch64_finish_dynamic_sections): Remove sh_entsize setting. + +2020-07-30 Rainer Orth + + * bfd.m4 (BFD_SYS_PROCFS_H): New macro. + (BFD_HAVE_SYS_PROCFS_TYPE): Require BFD_SYS_PROCFS_H. + Don't define _STRUCTURED_PROC. + (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Likewise. + * elf.c [HAVE_SYS_PROCFS_H] (_STRUCTURED_PROC): Don't define. + * configure.ac: Use BFD_SYS_PROCFS_H to check for . + * configure, config.in: Regenerate. + * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. + * Makefile.in, doc/Makefile.in: Regenerate. + +2020-07-30 H.J. Lu + + * elf-bfd.h (sym_cache): Moved before elf_link_hash_table. + (elf_link_hash_table): Add sym_cache. + * elf32-arm.c (elf32_arm_link_hash_table): Remove sym_cache. + (elf32_arm_check_relocs): Updated. + (elf32_arm_size_dynamic_sections): Likewise. + * elf32-bfin.c (bfin_link_hash_table): Removed. + (bfin_link_hash_newfunc): Updated. + (bfin_hash_table): Removed. + * elf32-csky.c (csky_elf_link_hash_table): Remove sym_cache. + (csky_elf_check_relocs): Updated. + * elf32-hppa.c (elf32_hppa_link_hash_table): Remove sym_cache. + (elf32_hppa_check_relocs): Updated. + * elf32-i386.c (elf_i386_tls_transition): Updated. + (elf_i386_convert_load_reloc): Likewise. + (elf_i386_check_relocs): Likewise. + * elf32-m32r.c (elf_m32r_link_hash_table): Removed. + (m32r_elf_hash_table): Updated. + (m32r_elf_link_hash_table_create): Likewise. + (m32r_elf_create_dynamic_sections): Likewise. + (m32r_elf_adjust_dynamic_symbol): Likewise. + (allocate_dynrelocs): Likewise. + (m32r_elf_size_dynamic_sections): Likewise. + (m32r_elf_relocate_section): Likewise. + (m32r_elf_finish_dynamic_symbol): Likewise. + (m32r_elf_check_relocs): Likewise. + * elf32-m68hc1x.h (m68hc11_elf_link_hash_table): Remove + sym_cache. + * elf32-m68k.c (elf_m68k_link_hash_table): Likewise. + (elf_m68k_check_relocs): Updated. + * elf32-metag.c (elf_metag_link_hash_table): Remove sym_cache. + (elf_metag_check_relocs): Updated. + * elf32-microblaze.c (elf32_mb_link_hash_table): Remove sym_sec. + (microblaze_elf_check_relocs): Updated. + * elf32-nds32.c (nds32_elf_link_hash_table_create): Likewise. + (nds32_elf_create_dynamic_sections): Likewise. + (nds32_elf_adjust_dynamic_symbol): Likewise. + (nds32_elf_check_relocs): Likewise. + * elf32-nds32.h (elf_nds32_link_hash_table): Remove sdynbss, + srelbss and aym_cache. + * elf32-nios2.c (elf32_nios2_link_hash_table): Remove sym_cache. + (nios2_elf32_check_relocs): Updated. + * elf32-or1k.c (elf_or1k_link_hash_table): Remove sym_sec. + (or1k_elf_check_relocs): Updated. + * elf32-ppc.c (ppc_elf_check_relocs): Remove sym_cache. + (ppc_elf_check_relocs): Updated. + * elf32-s390.c (elf_s390_link_hash_table): Remove sym_cache. + (elf_s390_check_relocs): Updated. + (elf_s390_finish_dynamic_sections): Likewise. + * elf32-sh.c (elf_sh_link_hash_table): Remove sdynbss, srelbss + and aym_cache. + (sh_elf_create_dynamic_sections): Updated. + (sh_elf_adjust_dynamic_symbol): Likewise. + (sh_elf_size_dynamic_sections): Likewise. + (sh_elf_check_relocs): Likewise. + * elf32-tic6x.c (elf32_tic6x_link_hash_table): Remove sym_cache. + (elf32_tic6x_check_relocs): Updated. + * elf32-tilepro.c (tilepro_elf_link_hash_table): Removed. + (tilepro_elf_hash_table): Updated. + (tilepro_elf_link_hash_table_create): Likewise. + (tilepro_elf_check_relocs): Likewise. + (tilepro_elf_adjust_dynamic_symbol): Likewise. + (allocate_dynrelocs): Likewise. + (tilepro_elf_size_dynamic_sections): Likewise. + (tilepro_elf_relocate_section): Likewise. + (tilepro_elf_finish_dynamic_symbol): Likewise. + (tilepro_finish_dyn): Likewise. + (tilepro_elf_finish_dynamic_sections): Likewise. + * elf64-ppc.c (ppc_link_hash_table): Remove sym_cache. + (ppc64_elf_before_check_relocs): Updated. + (ppc64_elf_check_relocs): Likewise. + * elf64-s390.c (elf_s390_link_hash_table): Remove sym_cache. + (elf_s390_check_relocs): Updated. + (elf_s390_relocate_section): Likewise. + (elf_s390_finish_dynamic_sections): Likewise. + * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. + (elf_x86_64_check_relocs): Likewise. + * elfnn-aarch64.c (elf_aarch64_link_hash_table): Remove + sym_cache. + (elfNN_aarch64_check_relocs): Updated. + * elfnn-riscv.c (riscv_elf_link_hash_table): Remove sym_cache. + (riscv_elf_check_relocs): Updated. + * elfxx-mips.c (mips_elf_link_hash_table): Remove sym_cache. + (mips_elf_resolve_got_page_ref): Updated. + * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. + * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove + sym_cache. + * elfxx-tilegx.c (tilegx_elf_link_hash_table): Likewise. + (tilegx_elf_check_relocs): Updated. + * elfxx-x86.h (elf_x86_link_hash_table): Remove sym_cache. + +2020-07-29 Maciej W. Rozycki + + * elflink.c (bfd_elf_final_link): Give local symbols a name if + so requested. + * elfxx-mips.c (_bfd_mips_elf_name_local_section_symbols): Only + return TRUE if making ET_REL output. + +2020-07-29 Maciej W. Rozycki + + * elf-bfd.h (elf_backend_data): Add + `elf_backend_elfsym_local_is_section' member. + * elfxx-target.h (elf_backend_elfsym_local_is_section): New + macro. + (elfNN_bed): Add `elf_backend_elfsym_local_is_section' member. + * elflink.c (bfd_elf_final_link): Use it to determine whether + set the `.symtab' section's `sh_info' value to the index of the + first non-local or non-section symbol. + * elf32-mips.c (mips_elf32_elfsym_local_is_section): New + function. + (elf_backend_elfsym_local_is_section): New macro. + * elfn32-mips.c (mips_elf_n32_elfsym_local_is_section): New + function. + (elf_backend_elfsym_local_is_section): New macro. + +2020-07-29 Alan Modra + + * elflink.c (bfd_elf_final_link): Don't segfault on local dynsyms + defined in excluded sections. + +2020-07-28 Alan Modra + + * elf.c (assign_section_numbers): Comment. Don't segfault on + discarded sections when setting linked-to section for generic + ELF linker. + * elflink.c (bfd_elf_match_symbols_in_sections): Allow NULL info. + +2020-07-27 Alan Modra + + * xcofflink.c (xcoff_need_ldrel_p): Accept --just-symbols symbols and + similar as absolute. + (bfd_xcoff_import_symbol): Don't fuss over absolute symbol + redefinitions here. + +2020-07-24 Nick Clifton + + * config.bfd: Move xc16x target to the obsolete list. + +2020-07-22 Kevin Buettner + + * binary.c (binary_get_section_contents): Seek using offset + from section's file position. + +2020-07-22 Kevin Buettner + + * elf.c (_bfd_elf_make_section_from_phdr): Remove hack for GDB. + +2020-07-22 Max Filippov + + PR 26246 + * elf32-xtensa.c (removed_literal_compare): Use correct pointer + type for the first function argument. Rename pointers to reflect + that they have distinct types. + +2020-07-20 Alan Modra + + * elflink.c (_bfd_elf_gc_keep): Use bfd_is_const_section. + +2020-07-19 Alan Modra + + * elf64-ppc.c (struct ppc_link_hash_table): Add has_power10_relocs. + (select_alt_stub): New function. + (ppc_get_stub_entry): Use it here. + (ppc64_elf_check_relocs): Set had_power10_relocs rather than + power10_stubs. + (ppc64_elf_size_stubs): Clear power10_stubs here instead. Don't + merge notoc stubs with other varieties when power10_stubs is "auto". + Instead dup the stub hash table entry. + (plt_stub_size, ppc_build_one_stub, ppc_size_one_stub): Adjust + tests of power10_stubs. + +2020-07-15 Alan Modra + + PR 26239 + * coffgen.c (_bfd_coff_close_and_cleanup): Free dwarf2 info. + +2020-07-15 Nick Clifton + + PR26240 + * coffgen.c (coff_get_normalized_symtab): Fix off-by-one error in + check for aux entries that overflow the buufer. + +2020-07-15 Hans-Peter Nilsson + + * elf64-mmix.c (mmix_elf_relax_section): Improve accounting for + R_MMIX_PUSHJ_STUBBABLE relocs against undefined symbols. + +2020-07-15 Markus Böck + Alan Modra + + PR 26198 + * coffgen.c (_bfd_coff_section_already_linked): Allow for plugin + objects both before and after normal object files. + * elflink.c (_bfd_elf_section_already_linked): Likewise. + +2020-07-10 Alan Modra + + * elf64-ppc.h (struct ppc64_elf_params): Add power10_stubs. + * elf64-ppc.c (struct ppc_link_hash_table): Delete + power10_stubs. + (ppc64_elf_check_relocs): Adjust setting of power10_stubs. + (plt_stub_size, ppc_build_one_stub, ppc_size_one_stub): Adjust + uses of power10_stubs. + +2020-07-09 Alan Modra + + * coff-ppc.c: Delete. + * pe-ppc.c: Delete. + * pei-ppc.c: Delete. + * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Remove PE PPC. + * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): Remove + PPCMAGIC code. + (coff_write_object_contents): Remove PPC_PE code. + * config.bfd: Move powerpcle-pe to removed targets. + * configure.ac: Remove powerpc PE entries. + * libcoff-in.h (ppc_allocate_toc_section): Delete. + (ppc_process_before_allocation): Delete. + * peXXigen.c: Remove POWERPC_LE_PE code and comments. + * targets.c: Remove powerpc PE vectors. + * po/SRC-POTFILES.in: Regenerate. + * libcoff.h: Regenerate. + * Makefile.in: Regenerate. + * configure: Regenerate. + +2020-07-09 Nick Clifton + + * po/fr.po: Updated French translation. + +2020-07-07 Alan Modra + + * xcofflink.c (xcoff_mark): Don't mark const sections. + (bfd_xcoff_record_link_assignment): Add FIXME. + (_bfd_xcoff_bfd_final_link): Don't segfault on assorted magic + sections being discarded by linker script. + +2020-07-07 Alan Modra + + * coff-rs6000.c (xcoff_write_archive_contents_old): Set default + time, uid, gid and mode for deterministic archive. + (xcoff_write_archive_contents_big): Likewise. + +2020-07-07 Alan Modra + + * coffcode.h (coff_classify_symbol): Handle C_HIDEXT and + C_AIX_WEAKEXT. + +2020-07-06 Nick Clifton + + * po/pt.po: Updated Portuguese translation. + * po/uk.po: Updated Ukranian translation. + +2020-07-04 Nick Clifton + + * version.m4: Set version to 2.35.50. + * configure: Regenerate. + * po/bbfd.pot: Regenerate. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-07-01 Alan Modra + + PR 26188 + * coffgen.c (coff_find_nearest_line_with_names): Sanity check + raw syment index before dereferencing. + +2020-07-01 Alan Modra + + * elf32-i386.c (elf_backend_object_p): Undef for vxworks. + +2020-07-01 Alan Modra + + * config.bfd: Obsolete xc16x. + +2020-06-30 H.J. Lu + + * archures.c (bfd_mach_i386_nacl): Removed. + (bfd_mach_i386_i386_nacl): Likewise. + (bfd_mach_x86_64_nacl): Likewise. + (bfd_mach_x64_32_nacl): Likewise. + * config.bfd: Remove *-*-nacl* targets. + * configure.ac: Remove x86 NaCl target vectors. + * cpu-i386.c (bfd_arch_i386_onebyte_nop_fill): Removed. + (bfd_x64_32_nacl_arch): Likewise. + (bfd_x86_64_nacl_arch): Likewise. + (bfd_i386_nacl_arch): Likewise. + (bfd_x64_32_arch_intel_syntax): Updated. + * elf32-i386.c: Don't include "elf-nacl.h". + (elf_i386_nacl_plt): Removed. + (elf_i386_nacl_plt0_entry): Likewise. + (elf_i386_nacl_plt_entry): Likewise. + (elf_i386_nacl_pic_plt0_entry): Likewise. + (elf_i386_nacl_pic_plt_entry): Likewise. + (elf_i386_nacl_eh_frame_plt): Likewise. + (elf_i386_nacl_plt): Likewise. + (elf32_i386_nacl_elf_object_p): Likewise. + (elf_i386_get_synthetic_symtab): Updated. + (elf_i386_link_setup_gnu_properties): Likewise. + * elf64-x86-64.c: Don't include "elf-nacl.h". + (elf_x86_64_nacl_plt): Removed. + (elf64_x86_64_nacl_elf_object_p): Likewise. + (elf_x86_64_nacl_plt0_entry): Likewise. + (elf_x86_64_nacl_plt_entry): Likewise. + (elf_x86_64_nacl_eh_frame_plt): Likewise. + (elf_x86_64_nacl_plt): Likewise. + (elf32_x86_64_nacl_elf_object_p): Likewise. + (elf_x86_64_get_synthetic_symtab): Updated. + (elf_x86_64_link_setup_gnu_properties): Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Likewise. + * targets.c: Remove x86 NaCl target vectors. + * bfd-in2.h: Regenerated. + * configure: Likewise. + +2020-06-29 H.J. Lu + + * elf32-tic6x.c (elf32_tic6x_size_dynamic_sections): Call + _bfd_elf_add_dynamic_tags. + +2020-06-29 Alan Modra + + * peXXigen.c (_bfd_XXi_slurp_codeview_record): Properly check + return value of bfd_bread. Don't read more than requested length. + Sanity check length. Properly terminate file name. + +2020-06-29 Alan Modra + + * arc-got.h: Use C style comments. + * coff-z80.c: Likewise. + * elf32-csky.c: Likewise. + * peXXigen.c: Likewise. + * elf32-m32c.c (m32c_elf_relax_delete_bytes): Remove commented out + code. + +2020-06-26 Pat Bernardi + + * elf32-m68k.c (m68k_elf_merge_obj_attributes): New function. + (elf32_m68k_merge_private_bfd_data): Merge GNU attributes. + +2020-06-26 Alan Modra + + * elfxx-riscv.c (struct priv_spec_t, priv_specs), + (riscv_get_priv_spec_class, riscv_get_priv_spec_class_from_numbers), + (riscv_get_priv_spec_name): Move to.. + * cpu-riscv.c: ..here. + (riscv_get_priv_spec_class_from_numbers): Don't xmalloc temp buffer. + Use %u to print unsigned numbers. + +2020-06-24 Andrew Burgess + + * cpu-riscv.c (riscv_scan): Don't allow shorter matches using the + default architecture. + +2020-06-24 H.J. Lu + + PR ld/26083 + * elf32-csky.c (csky_elf_size_dynamic_sections): Call + _bfd_elf_add_dynamic_tags. + +2020-06-24 H.J. Lu + + PR ld/26083 + * elf32-cris.c (elf_cris_size_dynamic_sections): Call + _bfd_elf_add_dynamic_tags. + +2020-06-24 Alan Modra + + * vms-alpha.c (_bfd_vms_slurp_etir ): Implement + shifts without undefined behaviour. + +2020-06-23 H.J. Lu + + * elf-bfd.h (elf_link_hash_table): Add dt_pltgot_required and + dt_jmprel_required. + (_bfd_elf_add_dynamic_tags): New. + * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Call + _bfd_elf_add_dynamic_tags. + * elf32-arc.c (elf_arc_size_dynamic_sections): Likewise. + * elf32-bfin.c (elf32_bfinfdpic_size_dynamic_sections): Likewise. + * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise. + * elf32-frv.c (elf32_frvfdpic_size_dynamic_sections): Likewise. + * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise. + * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise. + * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. + * elf32-microblaze.c (microblaze_elf_size_dynamic_sections): + Likewise. + * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise. + * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise. + * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise. + * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise. + * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise. + * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise. + * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. + * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): + Likewise. + * elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise. + * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise. + * elf32-arm.c (elf32_arm_size_dynamic_sections): Call + _bfd_elf_maybe_vxworks_add_dynamic_tags. + * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): + Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Likewise. + (_bfd_x86_elf_size_dynamic_sections): Likewise. + * elfxx-x86.h (elf_x86_link_hash_table): Remove dt_reloc, + dt_reloc_sz and dt_reloc_ent. + * elf-vxworks.c (_bfd_elf_maybe_vxworks_add_dynamic_tags): New. + * elf-vxworks.h (_bfd_elf_maybe_vxworks_add_dynamic_tags): + Likewise. + * elf32-hppa.c (elf32_hppa_link_hash_table_create): Set + etab.dt_pltgot_required. + (elf32_hppa_size_dynamic_sections): Call + _bfd_elf_add_dynamic_tags. + * elf32-metag.c (elf_metag_link_hash_table_create): Set + etab.dt_pltgot_required. + (elf_metag_size_dynamic_sections): Call _bfd_elf_add_dynamic_tags. + * elf32-sh.c (sh_elf_link_hash_table_create): Set + root.dt_pltgot_required for FDPIC output. + (sh_elf_size_dynamic_sections): Call + _bfd_elf_maybe_vxworks_add_dynamic_tags. + * elf32-xtensa.c (elf_xtensa_link_hash_table_create): Set + elf.dt_pltgot_required. + (elf_xtensa_size_dynamic_sections): Call + _bfd_elf_add_dynamic_tags. + * elf64-hppa.c (elf64_hppa_hash_table_create): Set + root.dt_pltgot_required. + (elf64_hppa_size_dynamic_sections): Call + _bfd_elf_add_dynamic_tags. + * elfnn-ia64.c (elfNN_ia64_hash_table_create): Set + root.dt_pltgot_required. + (elfNN_ia64_size_dynamic_sections): Set root.dt_jmprel_required + for rel_pltoff_sec. Call _bfd_elf_add_dynamic_tags. + * elflink.c (_bfd_elf_add_dynamic_tags): New. + +2020-06-22 Saagar Jha + + * mach-o.c: Support the new load commands by reading a linkedit + data command for them. + +2020-06-22 Nelson Chu + + * elfxx-riscv.c (struct priv_spec_t priv_specs[]): Move them from + opcodes/riscv-opc.c to bfd/elfxx-riscv.c, since we need it in linker. + (riscv_get_priv_spec_class): Likewise. + (riscv_get_priv_spec_name): Likewise. + (riscv_get_priv_spec_class_from_numbers): New function, convert + the version numbers into string, then call riscv_get_priv_spec_class + to get the priv spec class. + * elfxx-riscv.h (riscv_get_priv_spec_class): Move forward declaration + from include/opcode/riscv.h to bfd/elfxx-riscv.h. + (riscv_get_priv_spec_name): Likewise. + (riscv_get_priv_spec_class_from_numbers): New forward declaration. + (opcode/riscv.h): Include it in the header rather than elfxx-riscv.c. + * elfnn-riscv.c (riscv_merge_attributes): Get the priv spec classes + of input and output objects form their priv spec attributes by + riscv_get_priv_spec_class_from_numbers. Report warning rather than + errors when linking objects with differnet priv spec versions. We do + know v1.9.1 may have conflicts to other versions, so report the + warning, too. After that, update the output priv spec version to the + newest one so far. + +2020-06-22 Nelson Chu + + * elfnn-riscv.c (riscv_merge_attributes): Once we meet one of the + priv attributes, we will check the conflicts for all of them (major, + minor and revision), and then set the priv_attrs_merged to TRUE to + indicate that we have handled all of the priv attributes. Remove + the unused boolean priv_may_conflict, in_priv_zero and out_priv_zero. + +2020-06-21 Alan Modra + + PR 26132 + * configure.ac: Disable plugins by default for some targets. + * plugin.c: Comment typo fix. + * configure: Regenerate. + +2020-06-19 Nick Clifton + + * plugin.c (try_load_plugin): Suppress the error message about + being unable to open a plugin if creating a list of viable + plugins. + +2020-06-16 Alan Modra + + * aout-tic30.c: Delete file. + * Makefile.am (BFD32_BACKENDS): Remove aout-tic30.lo. + (BFD32_BACKENDS_CFILES): Remove aout-tic30.c. + * config.bfd (c30-*-*aout*, tic30-*-*aout*): Remove entry. + (xc16x-*-elf): Sort properly. + * configure.ac: Remove tic30_aout_vec. + * targets.c: Likewise. + * Makefile.in: Regenerate. + * configure: Regenerate. + * po/SRC-POTFILES.in: Regenerate. + +2020-06-15 Max Filippov + + * elf32-xtensa.c (XSHAL_ABI, XTHAL_ABI_UNDEFINED) + (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New macros. + (elf32xtensa_abi): New global variable. + (xtensa_abi_choice): New function. + (elf_xtensa_create_plt_entry): Use xtensa_abi_choice instead of + XSHAL_ABI to select PLT code. + +2020-06-15 Roland McGrath + + * elflink.c (bfd_elf_define_start_stop): Use start_stop_visibility + field of bfd_link_info. + +2020-06-15 Alan Modra + + * config.bfd: Obsolete powerpcle-*-pe targets. + +2020-06-15 Alan Modra + + PR 26103 + * elflink.c (elf_link_add_archive_symbols): Exclude undefined + symbols that were defined in discarded sections. + * cofflink.c (coff_link_check_archive_element): Likewise. + (coff_link_add_symbols): Set indx to -3 for symbols defined in + discarded sections. + (_bfd_coff_write_global_sym): Don't emit such symbols. + libcoff-in.h (struct coff_link_hash_entry): Update indx comment. + libcoff.h: Regenerate. + +2020-06-11 Alan Modra + + PR 26107 + * pdp11.c (is_stab): Replace legacy "index" function with "strchr". + +2020-06-10 H.J. Lu + + * elfnn-ia64.c (elfNN_ia64_link_hash_table): Remove reltext. + (allocate_dynrel_entries): Set DF_TEXTREL instead of reltext. + (elfNN_ia64_size_dynamic_sections): Check DF_TEXTREL instead + of reltext. + +2020-06-10 H.J. Lu + + PR ld/26094 + * elflink.c (bfd_elf_define_start_stop): Handle common symbols. + Clear verinfo.verdef. + +2020-06-09 H.J. Lu + + PR ld/18801 + * elf-bfd.h (elf_link_hash_table): Add ifunc_resolvers. + (_bfd_elf_allocate_ifunc_dyn_relocs): Remove the + bfd_boolean * argument. Set ifunc_resolvers if there are IFUNC + resolvers. + * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated. + Set ifunc_resolvers if there are FUNC resolvers. + * elf64-ppc.c (ppc_link_hash_table): Remove local_ifunc_resolver. + (build_global_entry_stubs_and_plt): Replace local_ifunc_resolver + with elf.ifunc_resolvers. + (write_plt_relocs_for_local_syms): Likewise. + (ppc64_elf_relocate_section): Likewise. + (ppc64_elf_finish_dynamic_sections): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs): + Updated. + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Likewise. + (_bfd_x86_elf_size_dynamic_sections): Check elf.ifunc_resolvers + instead of readonly_dynrelocs_against_ifunc. + * elfxx-x86.h (elf_x86_link_hash_table): Remove + readonly_dynrelocs_against_ifunc. + +2020-06-09 Alan Modra + + * elf64-ppc.c (struct ppc_link_hash_table): Delete + maybe_local_ifunc_resolver field. + (build_global_entry_stubs_and_plt): Set local_ifunc_resolver in + cases where maybe_local_ifunc_resolver was set. + (ppc64_elf_relocate_section): Likewise. + (ppc64_elf_finish_dynamic_sections): Downgrade ifunc with textrel + error to a warning. + +2020-06-08 H.J. Lu + + * elf-bfd.h (elf_link_hash_entry): Add tlsdesc_plt and + tlsdesc_got. + * elf32-arm.c (elf32_arm_link_hash_table): Remove tlsdesc_plt + and dt_tlsdesc_got. + (elf32_arm_size_dynamic_sections): Updated. Clear + root.tlsdesc_plt for DF_BIND_NOW. + (elf32_arm_finish_dynamic_sections): Updated. + (elf32_arm_output_arch_local_syms): Likewise. + * elf32-nds32.c (nds32_elf_size_dynamic_sections): Updated. + Clear root.tlsdesc_plt for DF_BIND_NOW. + (nds32_elf_finish_dynamic_sections): Updated. + * elf32-nds32.h (elf_nds32_link_hash_table): Remove + dt_tlsdesc_plt and dt_tlsdesc_got. + * elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Updated. + * elfnn-aarch64.c (elf_aarch64_link_hash_table): Remove + tlsdesc_plt and dt_tlsdesc_got. + (elfNN_aarch64_allocate_dynrelocs): Updated. + (elfNN_aarch64_finish_dynamic_sections): Likewise. + (elfNN_aarch64_size_dynamic_sections): Updated. Clear + root.tlsdesc_plt for DF_BIND_NOW. Don't check DF_BIND_NOW + twice. + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Updated. + (_bfd_x86_elf_size_dynamic_sections): Likewise. + (_bfd_x86_elf_finish_dynamic_sections): Likewise. + * elfxx-x86.h (elf_x86_link_hash_table): Remove tlsdesc_plt and + tlsdesc_got. + +2020-06-07 H.J. Lu + + * elf32-tic6x.c (elf32_bed): Defined the default to + elf32_tic6x_bed. + +2020-06-07 H.J. Lu + + * elf64-hppa.c (elf64_hppa_link_hash_table): Remove plt_sec and + plt_rel_sec. + (elf64_hppa_check_relocs): Replace plt_sec/plt_rel_sec with + root.splt/root.srelplt. + (elf64_hppa_create_dynamic_sections): Likewise. + (elf64_hppa_size_dynamic_sections): Likewise. + (elf64_hppa_finish_dynamic_symbol): Likewise. + (elf_hppa_final_link): Likewise. + (elf_hppa_final_link_relocate): Likewise. + +2020-06-06 H.J. Lu + + * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Updated. + * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove + is_vxworks. + +2020-06-06 H.J. Lu + + * elf-bfd.h (elf_target_os): New. + (elf_link_hash_table): Add target_os. + (elf_backend_data): Add target_os. + * elf32-arm.c (elf32_arm_link_hash_table): Remove vxworks_p, + symbian_p and nacl_p. + (create_got_section): Updated. + (elf32_arm_create_dynamic_sections): Likewise. + (arm_type_of_stub): Likewise. + (elf32_arm_create_or_find_stub_sec): Likewise. + (elf32_arm_allocate_plt_entry): Likewise. + (elf32_arm_populate_plt_entry): Likewise. + (elf32_arm_final_link_relocate): Likewise. + (elf32_arm_check_relocs): Likewise. + (allocate_dynrelocs_for_symbol): Likewise. + (elf32_arm_finish_dynamic_symbol): Likewise. + (elf32_arm_finish_dynamic_sections): Likewise. + (elf32_arm_output_plt_map_1): Likewise. + (elf32_arm_output_arch_local_syms): Likewise. + (elf32_arm_add_symbol_hook): Likewise. + (elf32_arm_nacl_link_hash_table_create): Likewise. + (elf32_arm_vxworks_link_hash_table_create): Likewise. + (elf32_arm_symbian_link_hash_table_create): Likewise. + (ELF_TARGET_OS): New. + * elf32-i386.c (elf_i386_arch_bed): Removed. + (elf_backend_arch_data): Likewise. + (elf_i386_solaris_arch_bed): Likewise. + (elf_i386_nacl_arch_bed): Likewise. + (elf_i386_vxworks_arch_bed): Likewise. + (elf_i386_relocate_section): Updated. + (elf_i386_finish_dynamic_sections): Likewise. + (elf_i386_get_synthetic_symtab): Likewise. + (elf_i386_link_setup_gnu_properties): Likewise. + (ELF_TARGET_OS): New. + * elf32-mips.c (ELF_TARGET_OS): New. + * elf32-ppc.c (ppc_elf_link_hash_table): Remove is_vxworks. + (ppc_elf_create_got): Updated. + (ppc_elf_create_dynamic_sections): Likewise. + (ppc_elf_check_relocs): Likewise. + (ppc_elf_adjust_dynamic_symbol): Likewise. + (ppc_elf_size_dynamic_sections): Likewise. + (ppc_elf_relocate_section): Likewise. + (ppc_elf_finish_dynamic_sections): Likewise. + (ppc_elf_vxworks_link_hash_table_create): Likewise. + (ELF_TARGET_OS): New. + * elf32-sh.c (elf_sh_link_hash_table): Remove vxworks_p. + (sh_elf_link_hash_table_create): Updated. + (sh_elf_create_dynamic_sections): Likewise. + (allocate_dynrelocs): Likewise. + (sh_elf_size_dynamic_sections): Likewise. + (sh_elf_relocate_section): Likewise. + (sh_elf_finish_dynamic_symbol): Likewise. + (sh_elf_finish_dynamic_sections): Likewise. + (ELF_TARGET_OS): New. + * elf32-sparc.c (elf32_sparc_vxworks_link_hash_table_create): + Removed. + (bfd_elf32_bfd_link_hash_table_create): Likewise. + (ELF_TARGET_OS): New. + * elf64-x86-64.c (elf_x86_64_arch_bed): Removed. + (elf_x86_64_solaris_arch_bed): Likewise. + (elf_x86_64_nacl_arch_bed): Likewise. + (elf_x86_64_finish_dynamic_sections): Updated. + (elf_x86_64_get_synthetic_symtab): Likewise. + (elf_x86_64_link_setup_gnu_properties): Likewise. + (ELF_TARGET_OS): New. + * elflink.c (_bfd_elf_link_hash_table_init): Initialize + target_o. + * elfxx-mips.c (mips_elf_link_hash_table): Remove is_vxworks. + (MIPS_ELF_REL_DYN_NAME): Updated. + (ELF_MIPS_GP_OFFSET): Likewise. + (mips_elf_create_local_got_entry): Likewise. + (mips_elf_allocate_dynamic_relocations): Likewise. + (mips_elf_count_got_symbols): Likewise. + (is_gott_symbol): Likewise. + (mips_elf_calculate_relocation): Likewise. + (mips_elf_create_dynamic_relocation): Likewise. + (_bfd_mips_elf_check_relocs): Likewise. + (allocate_dynrelocs): Likewise. + (_bfd_mips_elf_adjust_dynamic_symbol): Likewise. + (mips_elf_lay_out_got): Likewise. + (mips_elf_set_plt_sym_value): Likewise. + (_bfd_mips_elf_size_dynamic_sections): Likewise. + (_bfd_mips_elf_finish_dynamic_symbol): Likewise. + (_bfd_mips_elf_finish_dynamic_sections): Likewise. + (_bfd_mips_elf_final_link): Likewise. + (_bfd_mips_init_file_header): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_create_dynamic_sections): + Likewise. + (allocate_dynrelocs): Likewise. + (_bfd_sparc_elf_size_dynamic_sections): Likewise. + (_bfd_sparc_elf_relocate_section): Likewise. + (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. + (sparc_finish_dyn): Likewise. + (_bfd_sparc_elf_finish_dynamic_sections): Likewise. + * elfxx-target.h (ELF_TARGET_OS): New. + (elfNN_bed): Add ELF_TARGET_OS. + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Updated. + (_bfd_x86_elf_link_hash_table_create): Likewise. + (_bfd_x86_elf_size_dynamic_sections): Likewise. + (_bfd_x86_elf_finish_dynamic_sections): Likewise. + (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. + (_bfd_x86_elf_link_setup_gnu_properties): Likewise. + * elfxx-x86.h (elf_x86_target_os): Removed. + (elf_x86_backend_data): Likewise. + (get_elf_x86_backend_data): Likewise. + (elf_x86_link_hash_table): Remove target_os. + +2020-06-06 Alan Modra + + * reloc.c: Rename + BFD_RELOC_PPC64_GOT_TLSGD34 to BFD_RELOC_PPC64_GOT_TLSGD_PCREL34, + BFD_RELOC_PPC64_GOT_TLSLD34 to BFD_RELOC_PPC64_GOT_TLSLD_PCREL34, + BFD_RELOC_PPC64_GOT_TPREL34 to BFD_RELOC_PPC64_GOT_TPREL_PCREL34, + BFD_RELOC_PPC64_GOT_DTPREL34 to BFD_RELOC_PPC64_GOT_DTPREL_PCREL34. + * elf64-ppc.c: Update throughout for reloc renaming. + (ppc64_elf_reloc_name_lookup): Handle old reloc names. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + +2020-06-05 H.J. Lu + + PR ld/26080 + * elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC + section. + +2020-06-05 Nick Clifton + + * pdp11.c (aout_link_add_symbols): Fix use before initialisation + bug. + +2020-06-05 Nelson Chu + + * elfnn-riscv.c (riscv_merge_attributes): Add new boolean + priv_may_conflict, in_priv_zero and out_priv_zero to decide + whether the object can be linked according to it's priv + attributes. The object without any priv spec attributes can + be linked with others. If the first input object doesn't contain + any priv attributes, then we need to copy the setting from the + next input one. Also report more detailed error messages to user. + +2020-06-04 Stephen Casner + + Extend pdp11-aout symbol table format to accommodate .stab + symbols and implement correct handling of them. + + * pdp11.c (pdp11_external_nlist): Repurposed e_unused to e_desc. + (N_STAB, is_stab): Needed new function is_stab to disambiguate + normal vs. .stab symbol table type values, replacing N_STAB mask. + (translate_from_native_sym_flags): Determine correct section for + different .stab types. + (translate_to_native_sym_flags): Leave .stab types intact. + (translate_symbol_table): Error if symbol indicates overlay; + store desc field from .stab symbols. + (write_syms): Output desc field with symbol. + (aout_link_check_ar_symbols): Skip .stab symbols. + (aout_link_add_symbols): Correctly distinguish .stab symbols. + (aout_link_write_other_symbol): Write 0 for desk and ovly fields. + (aout_link_write_symbols): Write 0 for desk and ovly fields; + correctly distinguish .stab symbols and select calculate their + section and value; and copy desc and ovly fields from input symbol + to output symbol. + +2020-06-04 Stephen Casner + + * aoutx.h (translate_symbol_table): Comment had external and + internal swapped. + * pdp11.c (translate_symbol_table): Likewise. + +2020-06-04 H.J. Lu + + * elfxx-x86.h (elf_x86_link_hash_table): Remove target_id. + (is_x86_elf): Check elf.hash_table_id instead of target_id. + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Updated. + +2020-06-04 H.J. Lu + + PR ld/26080 + * elf-m10300.c (mn10300_elf_relocate_section): Resolve relocation + in debug section against symbol defined in shared library to 0. + * elf32-i386.c (elf_i386_check_relocs): Remove SEC_ALLOC check. + * elf32-lm32.c (lm32_elf_check_relocs): Likewise. + * elf32-m32r.c (m32r_elf_check_relocs): Likewise. + * elf32-nds32.c (nds32_elf_check_relocs): Likewise. + * elf32-nios2.c (nios2_elf32_check_relocs): Likewise. + * elf32-or1k.c (or1k_elf_check_relocs): Likewise. + * elf32-ppc.c (ppc_elf_check_relocs): Likewise. + * elf32-sh.c (sh_elf_check_relocs): Likewise. + * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise. + * elf64-alpha.c (elf64_alpha_check_relocs): Likewise. + * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. + * elf32-vax.c (elf_vax_check_relocs): Set non_got_ref for non-GOT + reference. + (elf_vax_adjust_dynamic_symbol): Generate a copy reloc only if + there is non-GOT reference. + * elflink.c (_bfd_elf_link_check_relocs): Skip non-loaded, + non-alloced sections. + +2020-06-03 Stephen Casner + + Copy several years of fixes from bfd/aoutx.h to bfd/pdp11.c. + + * pdp11.c (some_aout_object_p): 4c1534c7a2a - Don't set EXEC_P for + files with relocs. + (aout_get_external_symbols): 6b8f0fd579d - Return if count is zero. + 0301ce1486b PR 22306 - Handle stringsize of zero, and error for any + other size that doesn't qcover the header word. + bf82069dce1 PR 23056 - Allocate an extra byte at the end of the + string table, and zero it. + (translate_symbol_table): 0d329c0a83a PR 22887 - Print an error + message and set bfd_error on finding an invalid name string offset. + (add_to_stringtab): INLINE -> inline + (pdp11_aout_swap_reloc_in): 116acb2c268 PR 22887 - Correct r_index + bound check. + (squirt_out_relocs): e2996cc315d PR 20921 - Check for and report + any relocs that could not be recognised. + 92744f05809 PR 20929 - Check for relocs without an associated symbol. + (find_nearest_line): 808346fcfcf PR 23055 - Check that the symbol + name exists and is long enough, before attempting to see if it is + for a .o file. + c3864421222 - Correct case for N_SO being the last symbol. + 50455f1ab29 PR 20891 - Handle the case where the main file name + and the directory name are both empty. + e82ab856bb4 PR 20892 - Handle the case where function name is empty. + (aout_link_add_symbols): e517df3dbf7 PR 19629 - Check for out of + range string table offsets. + 531336e3a0b PR 20909 - Fix off-by-one error in check for an + illegal string offset. + (aout_link_includes_newfunc): Add comment. + (pdp11_aout_link_input_section): ad756e3f9e6 - Return with an error + on unexpected relocation type rather than ASSERT. + +2020-06-03 H.J. Lu + + PR ld/26066 + * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Call + _bfd_elf_maybe_set_textrel to set DF_TEXTREL. + +2020-06-03 H.J. Lu + + PR ld/26066 + * elf32-nios2.c (nios2_elf32_check_relocs): Skip non-loaded, + non-alloced sections. + +2020-06-03 H.J. Lu + + * elf32-frv.c (elf32_frv_relocate_section): Don't generate + dynamic relocations for non SEC_ALLOC sections. + +2020-06-03 Gunther Nikl + + * aout64.c (BMAGIC, QMAGIC): Do not define. + * aoutx.h (N_IS_BMAGIC, N_SET_QMAGIC): New defines. + (NAME (aout, some_aout_object_p)): Use N_IS_QMAGIC and N_IS_BMAGIC + to check the file format. + (adjust_z_magic): Use N_SET_QMAGIC to set file format. + * i386aout.c (NO_WRITE_HEADER_KLUDGE): Delete define. + * libaout.h (NO_WRITE_HEADER_KLUDGE): Do not define. + +2020-06-03 H.J. Lu + + * elf32-arc.c (elf_arc_relocate_section): Don't generate dynamic + relocations for non SEC_ALLOC sections. + +2020-06-03 H.J. Lu + + * elf-bfd.h (_bfd_elf_maybe_set_textrel): New + * elf32-arm.c (maybe_set_textrel): Removed. + (elf32_arm_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-csky.c (maybe_set_textrel): Removed. + (csky_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-hppa.c (maybe_set_textrel): Removed. + (elf32_hppa_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-lm32.c (maybe_set_textrel): Removed. + (lm32_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-m32r.c (maybe_set_textrel): Removed. + (m32r_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-metag.c (maybe_set_textrel): Removed. + (elf_metag_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-nds32.c (maybe_set_textrel): Removed. + (nds32_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-or1k.c (maybe_set_textrel): Removed. + (or1k_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-ppc.c (maybe_set_textrel): Removed. + (ppc_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-s390.c (maybe_set_textrel): Removed. + (elf_s390_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-sh.c (maybe_set_textrel): Removed. + (sh_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-tic6x.c (maybe_set_textrel): Removed. + (elf32_tic6x_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf32-tilepro.c (maybe_set_textrel): Removed. + (tilepro_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf64-ppc.c (maybe_set_textrel): Removed. + (ppc64_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elf64-s390.c (maybe_set_textrel): Removed. + (elf_s390_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elfnn-aarch64.c (maybe_set_textrel): Removed. + (elfNN_aarch64_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elfnn-riscv.c (maybe_set_textrel): Removed. + (riscv_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elfxx-sparc.c (maybe_set_textrel): Removed. + (_bfd_sparc_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elfxx-tilegx.c (maybe_set_textrel): Removed. + (tilegx_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elfxx-x86.c (maybe_set_textrel): Removed. + (_bfd_x86_elf_size_dynamic_sections): Replace maybe_set_textrel + with _bfd_elf_maybe_set_textrel. + * elflink.c (_bfd_elf_maybe_set_textrel): New. + +2020-06-03 H.J. Lu + + PR ld/26067 + * elf32-arm.c (elf32_arm_copy_indirect_symbol): Don't copy + dyn_relocs. + * elf32-csky.c (csky_elf_copy_indirect_symbol): Likewise. + * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise. + * elf32-metag.c (elf_metag_copy_indirect_symbol): Likewise. + * elf32-microblaze.c (microblaze_elf_copy_indirect_symbol): + Likewise. + * elf32-nds32.c (nds32_elf_copy_indirect_symbol): Likewise. + * elf32-nios2.c (nios2_elf32_copy_indirect_symbol): Likewise. + * elf32-or1k.c (or1k_elf_copy_indirect_symbol): Likewise. + * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise. + * elf32-sh.c (sh_elf_copy_indirect_symbol): Likewise. + * elf32-tilepro.c (tilepro_elf_copy_indirect_symbol): Likewise. + * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_copy_indirect_symbol): Likewise. + * elfnn-riscv.c (riscv_elf_copy_indirect_symbol): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_copy_indirect_symbol): Likewise. + * elfxx-tilegx.c (tilegx_elf_copy_indirect_symbol): Likewise. + * elfxx-x86.c (_bfd_x86_elf_copy_indirect_symbol): Likewise. + * elf32-lm32.c (lm32_elf_copy_indirect_symbol): Removed. + (elf_backend_copy_indirect_symbol): Likewise. + * elf32-m32r.c (m32r_elf_copy_indirect_symbol): Removed. + (elf_backend_copy_indirect_symbol): Likewise. + * elflink.c (_bfd_elf_link_hash_copy_indirect): Copy dyn_relocs. + +2020-06-03 H.J. Lu + + PR ld/26067 + * elf-bfd.h (_bfd_elf_readonly_dynrelocs): New. + * elf32-arm.c (readonly_dynrelocs): Removed. + (maybe_set_textrel): Replace readonly_dynrelocs with + _bfd_elf_readonly_dynrelocs. + * elf32-csky.c (readonly_dynrelocs): Removed. + (maybe_set_textrel): Replace readonly_dynrelocs with + _bfd_elf_readonly_dynrelocs. + * elf32-hppa.c(readonly_dynrelocs): Removed. + (alias_readonly_dynrelocs): Replace readonly_dynrelocs with + _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elf32-lm32.c (readonly_dynrelocs): Removed. + (lm32_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elf32-m32r.c (readonly_dynrelocs): Removed. + (m32r_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elf32-metag.c (readonly_dynrelocs): Removed. + (elf_metag_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elf32-microblaze.c (readonly_dynrelocs): Removed. + (microblaze_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + * elf32-nds32.c (readonly_dynrelocs): Removed. + (nds32_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elf32-or1k.c (readonly_dynrelocs): Removed. + (or1k_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + * elf32-ppc.c (readonly_dynrelocs): Removed. + (alias_readonly_dynrelocs): Replace readonly_dynrelocs with + _bfd_elf_readonly_dynrelocs. + (ppc_elf_adjust_dynamic_symbol): Likewise. + (maybe_set_textrel): Likewise. + * elf32-s390.c (readonly_dynrelocs): Removed. + (elf_s390_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elf32-sh.c (readonly_dynrelocs): Removed. + (sh_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs with + _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elf32-tic6x.c (readonly_dynrelocs): Removed. + (maybe_set_textrel): Replace readonly_dynrelocs with + _bfd_elf_readonly_dynrelocs. + * elf32-tilepro.c (readonly_dynrelocs): Removed. + (tilepro_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elf64-ppc.c (readonly_dynrelocs): Removed. + (alias_readonly_dynrelocs): Replace readonly_dynrelocs with + _bfd_elf_readonly_dynrelocs. + (ppc64_elf_adjust_dynamic_symbol): Likewise. + (maybe_set_textrel): Likewise. + * elf64-s390.c (readonly_dynrelocs): Removed. + (elf_s390_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elflink.c (_bfd_elf_readonly_dynrelocs): New. + * elfnn-aarch64.c (readonly_dynrelocs): Removed. + (maybe_set_textrel): Replace readonly_dynrelocs with + _bfd_elf_readonly_dynrelocs. + * elfnn-riscv.c (readonly_dynrelocs): Removed. + (riscv_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elfxx-sparc.c (readonly_dynrelocs): Removed. + (_bfd_sparc_elf_adjust_dynamic_symbol): Replace + readonly_dynrelocs with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elfxx-tilegx.c (readonly_dynrelocs): Removed. + (tilegx_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs + with _bfd_elf_readonly_dynrelocs. + (maybe_set_textrel): Likewise. + * elfxx-x86.c (readonly_dynrelocs): Removed. + (maybe_set_textrel): Replace readonly_dynrelocs with + _bfd_elf_readonly_dynrelocs. + (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. + +2020-06-03 H.J. Lu + + * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Silence + -fsanitize=undefined. + +2020-06-03 Alan Modra + + PR 26069 + PR 18758 + * peicode.h (pe_ILF_make_a_section): Align data for compilers + other than gcc. + (pe_ILF_build_a_bfd): Likewise. + +2020-06-03 Alan Modra + + PR 26069 + * elf.c (_bfd_elf_close_and_cleanup): Free elf_shstrtab for + core files as well as objects. + +2020-06-01 H.J. Lu + + PR ld/26067 + * elf-bfd.h (elf_link_hash_entry): Add dyn_relocs after size. + * elf-s390-common.c (s390_elf_allocate_ifunc_dyn_relocs): + Updated. + * elf32-arc.c (elf_arc_link_hash_entry): Remove dyn_relocs. + (elf_arc_link_hash_newfunc): Updated. + * elf32-arm.c (elf32_arm_link_hash_entry): Remove dyn_relocs. + (elf32_arm_link_hash_newfunc): Updated. + (elf32_arm_copy_indirect_symbol): Likewise. + (elf32_arm_check_relocs): Likewise. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs_for_symbol): Likewise. + * elf32-csky.c (csky_elf_link_hash_entry): Remove dyn_relocs. + (csky_elf_link_hash_newfunc): Updated. + (csky_allocate_dynrelocs): Likewise. + (readonly_dynrelocs): Likewise. + (csky_elf_copy_indirect_symbol): Likewise. + * elf32-hppa.c (elf32_hppa_link_hash_entry): Remove dyn_relocs. + (hppa_link_hash_newfunc): Updated. + (elf32_hppa_copy_indirect_symbol): Likewise. + (elf32_hppa_hide_symbol): Likewise. + (elf32_hppa_adjust_dynamic_symbol): Likewise. + (allocate_dynrelocs): Likewise. + (elf32_hppa_relocate_section): Likewise. + * elf32-i386.c (elf_i386_check_relocs): Likewise. + * elf32-lm32.c (elf_lm32_link_hash_entry): Removed. + (lm32_elf_link_hash_newfunc): Likewise. + (lm32_elf_link_hash_table_create): Updated. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + (lm32_elf_copy_indirect_symbol): Likewise. + * elf32-m32r.c (elf_m32r_link_hash_entry): Removed. + (m32r_elf_link_hash_newfunc): Likewise. + (m32r_elf_link_hash_table_create): Updated. + (m32r_elf_copy_indirect_symbol): Likewise. + (allocate_dynrelocs): Likewise. + * elf32-metag.c (elf_metag_link_hash_entry): Remove dyn_relocs. + (metag_link_hash_newfunc): Updated. + (elf_metag_copy_indirect_symbol): Likewise. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + * elf32-microblaze.c (elf32_mb_link_hash_entry): Remove + dyn_relocs. + (link_hash_newfunc): Updated. + (microblaze_elf_check_relocs): Likewise. + (microblaze_elf_copy_indirect_symbol): Likewise. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + * elf32-nds32.c (elf_nds32_link_hash_entry): Remove dyn_relocs. + (nds32_elf_link_hash_newfunc): Updated. + (nds32_elf_copy_indirect_symbol): Likewise. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + (nds32_elf_check_relocs): Likewise. + * elf32-nios2.c (elf32_nios2_link_hash_entry): Remove dyn_relocs. + (link_hash_newfunc): Updated. + (nios2_elf32_copy_indirect_symbol): Likewise. + (nios2_elf32_check_relocs): Likewise. + (allocate_dynrelocs): Likewise. + * elf32-or1k.c (elf_or1k_link_hash_entry): Remove dyn_relocs. + (or1k_elf_link_hash_newfunc): Updated. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + (or1k_elf_copy_indirect_symbol): Likewise. + * elf32-ppc.c (ppc_elf_link_hash_entry): Remove dyn_relocs. + (ppc_elf_link_hash_newfunc): Updated. + (ppc_elf_copy_indirect_symbol): Likewise. + (ppc_elf_check_relocs): Likewise. + (readonly_dynrelocs): Likewise. + (ppc_elf_adjust_dynamic_symbol): Likewise. + (allocate_dynrelocs): Likewise. + (ppc_elf_relocate_section): Likewise. + * elf32-s390.c (elf_s390_link_hash_entry): Remove dyn_relocs. + (link_hash_newfunc): Updated. + (elf_s390_copy_indirect_symbol): Likewise. + (readonly_dynrelocs): Likewise. + (elf_s390_adjust_dynamic_symbol): Likewise. + (allocate_dynrelocs): Likewise. + * elf32-sh.c (elf_sh_link_hash_entry): Remove dyn_relocs. + (sh_elf_link_hash_newfunc): Updated. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + (sh_elf_copy_indirect_symbol): Likewise. + (sh_elf_check_relocs): Likewise. + * elf32-tic6x.c (elf32_tic6x_link_hash_entry): Removed. + (elf32_tic6x_link_hash_newfunc): Likewise. + (elf32_tic6x_link_hash_table_create): Updated. + (readonly_dynrelocs): Likewise. + (elf32_tic6x_check_relocs): Likewise. + (elf32_tic6x_allocate_dynrelocs): Likewise. + * elf32-tilepro.c (tilepro_elf_link_hash_entry): Remove + dyn_relocs. + (link_hash_newfunc): Updated. + (tilepro_elf_copy_indirect_symbol): Likewise. + (tilepro_elf_check_relocs): Likewise. + (allocate_dynrelocs): Likewise. + * elf64-ppc.c (ppc_link_hash_entry): Remove dyn_relocs. + (ppc64_elf_copy_indirect_symbol): Updated. + (ppc64_elf_check_relocs): Likewise. + (readonly_dynrelocs): Likewise. + (ppc64_elf_adjust_dynamic_symbol): Likewise. + (dec_dynrel_count): Likewise. + (allocate_dynrelocs): Likewise. + (ppc64_elf_relocate_section): Likewise. + * elf64-s390.c (elf_s390_link_hash_entry): Remove dyn_relocs. + (link_hash_newfunc): Updated. + (elf_s390_copy_indirect_symbol): Likewise. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + * elfnn-aarch64.c (elf_aarch64_link_hash_entry): Remove + dyn_relocs. + (elfNN_aarch64_link_hash_newfunc): Updated. + (elfNN_aarch64_copy_indirect_symbol): Likewise. + (readonly_dynrelocs): Likewise. + (need_copy_relocation_p): Likewise. + (elfNN_aarch64_allocate_dynrelocs): Likewise. + (elfNN_aarch64_allocate_ifunc_dynrelocs): Likewise. + * elfnn-riscv.c (riscv_elf_link_hash_entry): Remove dyn_relocs. + (link_hash_newfunc): Updated. + (riscv_elf_copy_indirect_symbol): Likewise. + (riscv_elf_check_relocs): Likewise. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_link_hash_entry): Remove + dyn_relocs. + (link_hash_newfunc): Updated. + (_bfd_sparc_elf_copy_indirect_symbol): Likewise. + (_bfd_sparc_elf_check_relocs): Likewise. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + * elfxx-tilegx.c (tilegx_elf_link_hash_entry): Remove dyn_relocs. + (link_hash_newfunc): Updated. + (tilegx_elf_copy_indirect_symbol): Likewise. + (tilegx_elf_check_relocs): Likewise. + (readonly_dynrelocs): Likewise. + (allocate_dynrelocs): Likewise. + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Likewise. + (readonly_dynrelocs): Likewise. + (_bfd_x86_elf_copy_indirect_symbol): Likewise. + * elfxx-x86.h (elf_x86_link_hash_entry): Remove dyn_relocs. + +2020-06-01 Alan Modra + + * vms-alpha.c (_bfd_vms_slurp_etir): Check bound for the current + command against cmd_length, not the end of record. For + ETIR__C_STO_IMMR check size against cmd_length, mask repeat count + to 32-bits and break out on zero size. Add ETIR__C_STC_LP_PSB + cmd_length test. + +2020-05-28 David Faust + + * elf64-bpf.c (bpf_elf_relocate_section): Fix handling of + R_BPF_INSN_{32,64} relocations. + +2020-05-28 Stephen Casner + + * pdp11.c: Implement BRD_RELOC_32 to relocate the low 16 bits of + addreses in .long (used in testsuites) and .stab values. + +2020-05-27 H.J. Lu + + PR ld/22909 + * elflink.c (bfd_elf_final_link): Use bfd_link_textrel_check. + Check bfd_link_dll when issue a DT_TEXTREL warning. + * elfxx-x86.c (maybe_set_textrel): Likewise. + (_bfd_x86_elf_size_dynamic_sections): Likewise. + +2020-05-26 Nick Clifton + + * plugin.c (try_load_plugin): Extend error message when a plugin + fails to open. + +2020-05-23 Alan Modra + + * bfdio.c (bfd_get_file_size): Don't segfault on NULL arch_header. + +2020-05-22 Alan Modra + + PR 25882 + * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Don't init FP + attributes from shared libraries, and do not return an error if + they don't match. + +2020-05-21 Alan Modra + + PR 25993 + * opncls.c (_bfd_free_cached_info): Keep a copy of the bfd + filename. + (_bfd_delete_bfd): Free the copy. + (_bfd_new_bfd): Free nbfd->memory on error. + +2020-05-21 Alan Modra + + * aoutx.h: Replace "if (x) free (x)" with "free (x)" throughout. + * archive.c, * bfd.c, * bfdio.c, * coff-alpha.c, * coff-ppc.c, + * coff-sh.c, * coff-stgo32.c, * coffcode.h, * coffgen.c, + * cofflink.c, * cpu-arm.c, * doc/chew.c, * dwarf2.c, * ecoff.c, + * ecofflink.c, * elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c, + * elf-strtab.c, * elf.c, * elf32-arc.c, * elf32-arm.c, + * elf32-avr.c, * elf32-bfin.c, * elf32-cr16.c, * elf32-crx.c, + * elf32-epiphany.c, * elf32-ft32.c, * elf32-h8300.c, + * elf32-ip2k.c, * elf32-m32c.c, * elf32-m68hc11.c, + * elf32-m68k.c, * elf32-microblaze.c, * elf32-msp430.c, + * elf32-nds32.c, * elf32-nios2.c, * elf32-ppc.c, * elf32-pru.c, + * elf32-rl78.c, * elf32-rx.c, * elf32-sh.c, * elf32-spu.c, + * elf32-v850.c, * elf32-xtensa.c, * elf64-alpha.c, + * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mips.c + * elf64-mmix.c, * elf64-ppc.c, * elf64-sparc.c, * elfcode.h, + * elflink.c, * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c, + * elfxx-x86.c, * format.c, * ihex.c, * libbfd.c, * linker.c, + * mmo.c, * opncls.c, * pdp11.c, * peXXigen.c, * pef.c, + * peicode.h, * simple.c, * som.c, * srec.c, * stabs.c, * syms.c, + * targets.c, * vms-lib.c, * xcofflink.c, * xtensa-isa.c: Likewise. + +2020-05-20 Nelson Chu + + * elfxx-riscv.h (riscv_parse_subset_t): Add new callback function + get_default_version. It is used to find the default version for + the specific extension. + * elfxx-riscv.c (riscv_parsing_subset_version): Remove the parameters + default_major_version and default_minor_version. Add new bfd_boolean + parameter *use_default_version. Set it to TRUE if we need to call + the callback rps->get_default_version to find the default version. + (riscv_parse_std_ext): Call rps->get_default_version if we fail to find + the default version in riscv_parsing_subset_version, and then call + riscv_add_subset to add the subset into subset list. + (riscv_parse_prefixed_ext): Likewise. + (riscv_std_z_ext_strtab): Support Zicsr extensions. + * elfnn-riscv.c (riscv_merge_std_ext): Use strcasecmp to compare the + strings rather than characters. + riscv_merge_arch_attr_info): The callback function get_default_version + is only needed for assembler, so set it to NULL int the linker. + * elfxx-riscv.c (riscv_estimate_digit): Remove the static. + * elfxx-riscv.h: Updated. + +2020-05-20 Alan Modra + + PR 25993 + * archive.c (_bfd_get_elt_at_filepos): Don't strdup filename, + use bfd_set_filename. + * elfcode.h (_bfd_elf_bfd_from_remote_memory): Likewise. + * mach-o.c (bfd_mach_o_fat_member_init): Likewise. + * opncls.c (bfd_fopen, bfd_openstreamr, bfd_openr_iovec, bfd_openw), + (bfd_create): Likewise. + (_bfd_delete_bfd): Don't free filename. + (bfd_set_filename): Copy filename param to bfd_alloc'd memory, + return pointer to the copy or NULL on alloc fail. + * vms-lib.c (_bfd_vms_lib_get_module): Free newname and test + result of bfd_set_filename. + * bfd-in2.h: Regenerate. + +2020-05-20 Alan Modra + + PR 26011 + * elf.c (_bfd_elf_get_reloc_upper_bound): Sanity check reloc + section size against file size. + (_bfd_elf_get_dynamic_reloc_upper_bound): Likewise. + +2020-05-19 Gunther Nikl + + PR 26005 + * elf.c (bfd_section_from_shdr): Replace bfd_zmalloc with bfd_malloc + and memset when allocating memory for the sections_being_created + array. + +2020-05-19 Stafford Horne + + * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Rename srela + to relgot. + (or1k_elf_relocate_section): Access srelgot via + htab->root.srelgot. Add assertions for srelgot->contents. + Introduce local variable for srelgot to not reuse global + sreloc. + (or1k_elf_relocate_section): Fixup dynamic symbol detection. + (or1k_set_got_and_rela_sizes): New function. + (or1k_initial_exec_offset): New function. + (TLS_GD, TLS_IE, TLS_LD, TLS_LE): Redefine macros as masks. + (or1k_elf_relocate_section): Allow for TLS to handle multiple + model access. + (or1k_elf_check_relocs): Use OR to set TLS access. + (allocate_dynrelocs): Use or1k_set_got_and_rela_sizes to set + sizes. + (or1k_elf_size_dynamic_sections): Use + or1k_set_got_and_rela_sizes to set sizes. + (or1k_elf_relocate_section): Fixup PCREL relocation calculation. + (TCB_SIZE): New macro. + (tpoff): Use TCB_SIZE and alignment to calculate offset. + (allocate_dynrelocs, readonly_dynrelocs, or1k_elf_check_relocs) + (or1k_elf_size_dynamic_sections): Rename p to sec_relocs. + (allocate_dynrelocs): Rename s to splt or sgot based on usage. + (tpoff): Add dynamic boolean argument. + (or1k_elf_relocate_section): Pass dynamic flag to tpoff. + +2020-05-19 Siddhesh Poyarekar + + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Club + BFD_RELOC_AARCH64_BRANCH19 and BFD_RELOC_AARCH64_TSTBR14 + cases with BFD_RELOC_AARCH64_JUMP26. + (elfNN_aarch64_check_relocs): Likewise. + +2020-05-19 Alan Modra + + * aix5ppc-core.c (xcoff64_core_file_matches_executable_p): Use + bfd_get_filename rather than accessing bfd->filename directly. + * aout-target.h (MY (object_p)): Likewise. + * aoutx.h (aout_find_nearest_line, aout_link_write_symbols): Likewise. + * archive.c (find_nested_archive, _bfd_generic_read_ar_hdr_mag), + (_bfd_construct_extended_name_table, _bfd_bsd44_write_ar_hdr), + (_bfd_archive_bsd44_construct_extended_name_table), + (_bfd_write_archive_contents, _bfd_compute_and_write_armap), + (_bfd_bsd_write_armap): Likewise. + * bfd.c (bfd_errmsg, _bfd_doprnt): Likewise. + * cache.c (bfd_open_file): Likewise. + * ecoff.c (_bfd_ecoff_write_armap): Likewise. + * ecofflink.c (bfd_ecoff_debug_accumulate_other): Likewise. + * elf32-bfin.c (bfinfdpic_relocate_section): Likewise. + * elf32-frv.c (elf32_frv_relocate_section): Likewise. + * elf32-hppa.c (elf32_hppa_final_link): Likewise. + * elf32-nds32.c (nds32_elf_output_symbol_hook), + (patch_tls_desc_to_ie): Likewise. + * elf32-spu.c (sort_bfds, print_one_overlay_section), + (spu_elf_auto_overlay): Likewise. + * elf64-hppa.c (elf_hppa_final_link): Likewise. + * elf64-ia64-vms.c (elf64_ia64_size_dynamic_sections): Likewise. + * elfcore.h (elf_core_file_matches_executable_p): Likewise. + * elflink.c (bfd_elf_size_dynamic_sections), + (elf_link_input_bfd): Likewise. + * linker.c (_bfd_generic_link_output_symbols): Likewise. + * mach-o.c (bfd_mach_o_follow_dsym), + (bfd_mach_o_close_and_cleanup): Likewise. + * opncls.c (_bfd_delete_bfd, _maybe_make_executable), + (find_separate_debug_file, get_build_id_name): Likewise. + * pdp11.c (aout_find_nearest_line, aout_link_write_symbols): Likewise. + * plugin.c (bfd_plugin_open_input): Likewise. + * rs6000-core.c (rs6000coff_core_file_matches_executable_p): Likewise. + * som.c (som_write_armap): Likewise. + * srec.c (srec_write_record, srec_write_symbols): Likewise. + * vms-lib.c (_bfd_vms_lib_get_imagelib_file), + (_bfd_vms_lib_write_archive_contents): Likewise. + * xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise. + +2020-05-19 Alan Modra + + PR 25713 + * bfdio.c (_bfd_real_fopen): Typo fix. + +2020-05-18 Nick Clifton + + PR 26005 + * elf.c (bfd_section_from_shdr): Use bfd_malloc to allocate memory + for the sections_being_created array. + +2020-05-18 Alan Modra + + * ecoff.c (ecoff_slurp_reloc_table): Malloc external_relocs so + they can be freed without also freeing internal_relocs. + +2020-05-18 Jaydeep Chauhan + + PR 25713 + * bfdio.c (_bfd_real_fopen): Convert UNIX style sirectory + separators into DOS style when creating a WIN32 fullpath. + +2020-05-14 Nelson Chu + + * elfnn-riscv.c (elfNN_riscv_mkobject): New function. We need this + to initialize RISC-V tdata. + +2020-05-12 Gunther Nikl + + * aoutx.h (NAME (aout, swap_std_reloc_out)): Reject an unsupported + relocation size. + +2020-05-11 Alan Modra + + * elf64-ppc.c (xlate_pcrel_opt): Handle lxvp and stxvp. + +2020-05-11 Alan Modra + + * elf64-ppc.c: Rename powerxx to power10 throughout. + +2020-05-11 Alan Modra + + PR 25961 + * coffgen.c (coff_get_normalized_symtab): Check that buffer + contains required number of auxents before processing any auxent. + * coffswap.h (coff_swap_aux_in ): Only swap in extended + file name from auxents for PE. + +2020-05-04 Gunther Nikl + + * aout-cris.c (DEFAULT_ARCH): Delete define. + (MY_set_arch_mach): Likewise. + (SET_ARCH_MACH): Use bfd_set_arch_mach with an explicit architecture + of bfd_arch_cris. + (swap_ext_reloc_in): Add casts to r_index extraction. Mask valid bits + of r_type before the shift. + +2020-05-04 Wilco Dijkstra + + PR ld/25665 + * elfnn-aarch64.c (group_sections): Copy implementation from + elf32-arm.c. + +2020-05-01 Alan Modra + + PR 25900 + * elfnn-riscv.c (_bfd_riscv_relax_section): Check root.type before + accessing root.u.def of symbols. Also check root.u.def.section + is non-NULL. Reverse tests so as to make the logic positive. + +2020-05-01 Alan Modra + + PR 25882 + * elf32-tic6x.c (elf32_tic6x_merge_attributes): Don't transfer + Tag_ABI_PIC or Tag_ABI_PID from dynamic objects to the output. + +2020-05-01 Alan Modra + + PR 25882 + * elf32-bfin.c (elf32_bfin_merge_private_bfd_data): Add FIXME. + * elf32-frv.c (frv_elf_merge_private_bfd_data): Likewise. + * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise. + * elf32-nds32.c (nds32_elf_merge_private_bfd_data): Likewise. + * elf32-score.c (s3_elf32_score_merge_private_bfd_data): Likewise. + * elf32-score7.c (s7_elf32_score_merge_private_bfd_data): Likewise. + * elf32-sh.c (sh_elf_merge_private_data): Likewise. + * elf32-tic6x.c (elf32_tic6x_merge_attributes): Likewise. + * elf64-ia64-vms.c (elf64_ia64_merge_private_bfd_data): Likewise. + * elfnn-ia64.c (elfNN_ia64_merge_private_bfd_data): Likewise. + +2020-05-01 Alan Modra + + PR 25882 + * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Ignore e_flags + from shared libraries. + +2020-04-29 Max Filippov + + * elf32-xtensa.c (relax_section): Don't negate diff_value for + XTENSA_NDIFF relocations. Don't add sign bits whe diff_value + equals 0. Report overflow when the result has negative sign but + all significant bits are zero. + +2020-04-29 Gunther Nikl + + * aoutx.h (swap_std_reloc_out): Special case 64 bit relocations. + (aout_link_reloc_link_order): Likewise. Make r_length an unsigned. + +2020-04-28 Alan Modra + + * vms-alpha.c (_bfd_vms_slurp_etir): Correct divide by zero check. + Emit warning message. + +2020-04-27 Tamar Christina + + * coff-i386.c (COFF_WITH_PE_BIGOBJ): New. + * coff-x86_64.c (COFF_WITH_PE_BIGOBJ): New. + * config.bfd (targ_selvecs): Rename x86_64_pe_be_vec + to x86_64_pe_big_vec as it not a big-endian format. + (vec i386_pe_big_vec): New. + * configure.ac: Likewise. + * targets.c: Likewise. + * configure: Regenerate. + * pe-i386.c (TARGET_SYM_BIG, TARGET_NAME_BIG, + COFF_WITH_PE_BIGOBJ): New. + * pe-x86_64.c (TARGET_SYM_BIG, TARGET_NAME_BIG): + New. + (x86_64_pe_be_vec): Moved. + +2020-04-23 Anton Kolesov + + * elf-bfd.h (elfcore_write_arc_v2): Add prototype. + * elf.c (elfcore_grok_arc_v2): New function. + (elfcore_grok_note): Call the new function to handle the corresponding + note. + (elfcore_write_arc_v2): New function. + (elfcore_write_register_note): Call the new function to handle the + corresponding pseudo-sections. + +2020-04-22 Max Filippov + + PR ld/25861 + * bfd-in2.h: Regenerated. + * elf32-xtensa.c (elf_howto_table): New entries for + R_XTENSA_PDIFF{8,16,32} and R_XTENSA_NDIFF{8,16,32}. + (elf_xtensa_reloc_type_lookup, elf_xtensa_do_reloc) + (relax_section): Add cases for R_XTENSA_PDIFF{8,16,32} and + R_XTENSA_NDIFF{8,16,32}. + * libbfd.h (bfd_reloc_code_real_names): Add names for + BFD_RELOC_XTENSA_PDIFF{8,16,32} and + BFD_RELOC_XTENSA_NDIFF{8,16,32}. + * reloc.c: Add documentation for BFD_RELOC_XTENSA_PDIFF{8,16,32} + and BFD_RELOC_XTENSA_NDIFF{8,16,32}. + +2020-04-21 Tamar Christina + + PR binutils/24753 + * compress.c (bfd_get_full_section_contents): Exclude sections with no + content. + +2020-04-21 H.J. Lu + + PR ld/25849 + * elf-bfd.h (elf_backend_data): Add + elf_backend_strip_zero_sized_dynamic_sections. + (_bfd_elf_strip_zero_sized_dynamic_sections): New prototype. + * elf64-alpha.c (elf_backend_strip_zero_sized_dynamic_sections): + New macro. + * elflink.c (_bfd_elf_strip_zero_sized_dynamic_sections): New + function. + * elfxx-target.h (elf_backend_strip_zero_sized_dynamic_sections): + New macro. + (elfNN_bed): Add elf_backend_strip_zero_sized_dynamic_sections. + +2020-04-21 H.J. Lu + + * elf64-alpha.c (alpha_elf_reloc_entry): Replace reltext with + sec. + (elf64_alpha_check_relocs): Set sec instead of reltext. Warn + DT_TEXTREL with -M. + (elf64_alpha_calc_dynrel_sizes): Warn DT_TEXTREL with -M. + +2020-04-21 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-04-21 Alan Modra + + * elf32-sh.c (sh_elf_relocate_section): Remove STO_SH5_ISA32 + processing. + +2020-04-20 Stephen Casner + + * pdp11.c (N_STAB): Modify value to avoid conflict with N_EXT + causing globals from linker script to be treated as debug symbols. + (translate_symbol_table): Don't sign-extend symbol values from 16 + to 64 bits in nm output. + +2020-04-20 Alan Modra + + * elf64-ppc.c (ppc64_elf_size_stubs): Strip relbrlt too. + +2020-04-18 Alan Modra + + * section.c (bfd_is_const_section): Correct test for special + sections. + * bfd-in2.h: Regenerate. + +2020-04-17 Alan Modra + + PR 25842 + * elf.c (_bfd_elf_get_symbol_version_string): Don't segfault on + NULL nodename. + +2020-04-16 Nick Clifton + + PR 25803 + * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Replace an + abort with a more helpful error message. + +2020-04-16 Alan Modra + + PR 25827 + * dwarf2.c (scan_unit_for_symbols): Wrap overlong lines. Don't + strdup(0). + +2020-04-15 Fangrui Song + + PR binutils/24613 + * coff-rs6000.c (xcoff_ppc_relocate_section): Change RM_GENERATE_ERROR + to RM_DIAGNOSE plus a check of warn_unresolved_syms. + * coff64-rs6000.c (xcoff_ppc_relocate_section): Likewise. + * elf-bfd.h (_bfd_elf_large_com_section): Likewise. + * elf32-m32r.c (m32r_elf_relocate_section): Likewise. + * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise. + * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. + * elf32-sh.c (sh_elf_relocate_section): Likewise. + * elf32-spu.c (spu_elf_relocate_section): Likewise. + * elf64-hppa.c (elf64_hppa_relocate_section): Likewise. + * elflink.c (elf_link_output_extsym): Likewise. + * elfxx-mips.c (mips_elf_calculate_relocation): Likewise. + +2020-04-15 Alan Modra + + PR 25823 + * peXXigen.c (_bfd_XXi_swap_sym_in ): Don't use a + pointer into strings that may be freed for section name, always + allocate a new string. + +2020-04-14 Juan Manuel Guerrero + Jan W. Jagersma + + * coff-go32.c (COFF_GO32, IMAGE_SCN_LNK_NRELOC_OVFL) + (coff_SWAP_scnhdr_in, coff_SWAP_scnhdr_out): Define. + (_bfd_go32_swap_scnhdr_in, _bfd_go32_swap_scnhdr_out) + (_bfd_go32_mkobject): New functions. + * coff-stgo32.c (IMAGE_SCN_LNK_NRELOC_OVFL) + (coff_SWAP_scnhdr_in, coff_SWAP_scnhdr_out): Define. + (go32exe_mkobject): Call _bfd_go32_mkobject. + * coffcode.h (COFF_WITH_EXTENDED_RELOC_COUNTER): Define. + (coff_set_alignment_hook): Define function for COFF_GO32_EXE + and COFF_GO32. + (coff_write_relocs): Enable extended reloc counter code if + COFF_WITH_EXTENDED_RELOC_COUNTER is defined. Test for obj_go32. + (coff_write_object_contents): Likewise. Pad section headers + for COFF_GO32 and COFF_GO32EXE. Use bfd_coff_swap_scnhdr_out + instead of coff_swap_scnhdr_out. + * cofflink.c (_bfd_coff_final_link): Test also for obj_go32 to + enable extended reloc counter. + * coffswap.h: (coff_swap_scnhdr_in, coff_swap_scnhdr_out): + Declare with ATTRIBUTE_UNUSED. + * libcoff-in.h: (struct coff_tdata): New field go32. + (obj_go32): Define. + * libcoff.h: Regenerate. + +2020-04-14 Fangrui Song + + PR gas/25768 + * elf.c (assign_section_numbers): Always set .stab sh_entsize to + 12. + +2020-04-14 Stephen Casner + + PR ld/25677 + * pdp11.c: Add implementation of --imagic option. + (adjust_o_magic): Fix objcopy --extract-symbol test. + * libaout.h (enum aout_magic): Add i_magic. + +2020-04-07 Rainer Orth + Nick Clifton + + * elf32-sparc.c (sparc_final_write_processing): Fix whitespace. + <0>: Ignore. + : Error rather than abort. + +2020-04-03 H.J. Lu + + PR ld/25767 + * elf.c (_bfd_elf_fixup_group_sections): Remove zero-sized + relocation section from section group. + +2020-04-02 Jan W. Jagersma + + * bfdio.c (bfd_bread, bfd_tell, bfd_seek, bfd_mmap): Always add + bfd->origin to file offset. + * bfdwin.c (bfd_get_file_window): Likewise. + * bfd.c: Clarify the use of the bfd->origin field. + * bfd-in2.h: Regenerate. + * coff-i386.c: Don't include go32exe.h. Allow overriding + coff_write_object_contents via COFF_WRITE_CONTENTS. + * coff-stgo32.c (go32exe_cleanup, go32exe_mkobject) + (go32exe_write_object_contents): New functions. + (go32exe_temp_stub, go32exe_temp_stub_size): New static globals. + (COFF_WRITE_CONTENTS, GO32EXE_DEFAULT_STUB_SIZE): Define. + (create_go32_stub): Remove check for 2k size limit. Read stub + from go32exe_temp_stub if present. + (go32_stubbed_coff_bfd_copy_private_bfd_data): Allocate and + copy variable-length stub. + (go32_check_format): Read stub to go32exe_temp_stub, set + origin, return go32exe_cleanup. + (adjust_filehdr_in_post, adjust_filehdr_out_pre) + (adjust_filehdr_out_post, adjust_scnhdr_in_post) + (adjust_scnhdr_out_pre, adjust_scnhdr_out_post) + (adjust_aux_in_post, adjust_aux_out_pre, adjust_aux_out_post): + Remove functions and their associated #defines. + * coffcode.h (coff_mkobject_hook): Remove stub copying code. + * libcoff-in.h: (struct coff_tdata): New field stub_size. + Rename field go32stub to stub. + * libcoff.h: Regenerate. + * coff-stgo32.c (go32_check_format): Rename to... + (go32exe_check_format): ...this. + (go32_stubbed_coff_bfd_copy_private_bfd_data): Rename to... + (go32exe_copy_private_bfd_data): ...this. + (stub_bytes): Rename to... + (go32exe_default_stub): ...this. + (create_go32_stub): Rename to... + (go32exe_create_stub): ...this. + * coff-stgo32.c (go32exe_copy_private_bfd_data): Avoid realloc + when possible. + +2020-04-01 H.J. Lu + + PR ld/25749 + PR ld/25754 + * elf32-i386.c (elf_i386_convert_load_reloc): Convert load + relocation to R_386_32 for relocation against non-preemptible + absolute symbol. + (elf_i386_check_relocs): Call _bfd_elf_x86_valid_reloc_p. Don't + allocate dynamic relocation for non-preemptible absolute symbol. + (elf_i386_relocate_section): Pass sec to + GENERATE_DYNAMIC_RELOCATION_P. + * elf64-x86-64.c (R_X86_64_converted_reloc_bit): Moved. + (elf_x86_64_convert_load_reloc): Covert load relocation to + R_X86_64_32S or R_X86_64_32 for relocation against non-preemptible + absolute symbol. Don't convert to R_X86_64_32S nor R_X86_64_32 + for non-preemptible absolute symbol if they overflow. + (elf_x86_64_check_relocs): Call _bfd_elf_x86_valid_reloc_p. Set + tls_type for GOT slot to GOT_ABS for non-preemptible absolute + symbol. Don't allocate dynamic relocation for non-preemptible + absolute symbol. + (elf_x86_64_relocate_section): Don't generate relative relocation + for GOTPCREL relocations aganst local absolute symbol. Pass sec + to GENERATE_DYNAMIC_RELOCATION_P. + * elfxx-x86.c (elf_x86_allocate_dynrelocs): No dynamic relocation + against non-preemptible absolute symbol. + (_bfd_elf_x86_valid_reloc_p): New function. + (_bfd_x86_elf_size_dynamic_sections): No dynamic relocation for + GOT_ABS GOT slot. + * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Add an SEC + argument. Don't generate dynamic relocation against + non-preemptible absolute symbol. + (ABS_SYMBOL_P): New. + (GENERATE_RELATIVE_RELOC_P): Don't generate relative relocation + against non-preemptible absolute symbol. + (GOT_ABS): New. + (R_X86_64_converted_reloc_bit): New. Moved from elf64-x86-64.c. + (_bfd_elf_x86_valid_reloc_p): New. + +2020-04-01 Tamar Christina + + PR ld/16017 + * elf32-arm.c (elf32_arm_populate_plt_entry): Set LSB of the PLT0 + address in the GOT if in thumb only mode. + +2020-04-01 Tamar Christina + + * elf32-arm.c (elf32_thumb2_plt_entry): Fix PC-rel offset. + +2020-04-01 Hans-Peter Nilsson + + * mmo.c (mmo_scan): Create .text section only when needed, not + from the start. + +2020-03-31 Alan Modra + + * coff-alpha.c (alpha_ecoff_get_elt_at_filepos): Correct bfd_bread + return value check. + +2020-03-31 Alan Modra + + * vms-alpha.c (image_write): Check bounds for sections without + contents too. Error on non-zero write to section without + contents. + (_bfd_vms_slurp_etir): Check return of image_write* functions. + +2020-03-31 Alan Modra + + * tekhex.c (pass_over): Check is_eof before reading buffer. + +2020-03-30 Nick Clifton + + PR binutils/pr25662 + * libcoff-in.h (struct pe_tdata): Rename the insert_timestamp + field to timestamp and make it an integer. + * libcoff.h: Regenerate. + * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Test the timestamp + field in the pe_data structure rather than the insert_timestamp + field. + +2020-03-30 Alan Modra + + PR 25745 + * elf64-ppc.c (ppc64_elf_build_stubs): Use asprintf to form + statistics message. + +2020-03-26 Nick Clifton + + * cofflink.c (bfd_coff_get_internal_extra_pe_aouthdr): Delete. + * libbfd-in.h (bfd_coff_get_internal_extra_pe_aouthdr): Remove + prototype. + * libbfd.h: Regenerate. + +2020-03-26 Alan Modra + + * i386msdos.c (msdos_object_p): Catch -1 return from bfd_bread. + +2020-03-26 Alan Modra + + * vms-alpha.c (dst_define_location): Limit size of dst_ptr_offsets + array. + (_bfd_vms_slurp_object_records): Rename "err" to "ok". + +2020-03-25 Nick Clifton + + * cofflink.c (bfd_coff_get_internal_extra_pe_aouthdr): New + function. + * libbfd-in.h (bfd_coff_get_internal_extra_pe_aouthdr): Prototype. + * libbfd.h: Regenerate. + +2020-03-25 Shahab Vahedi + + * elf32-arc.c (PRINT_DEBUG_RELOC_INFO_BEFORE): Use the + correct field name in the output string. + +2020-03-25 Alan Modra + + PR 25662 + * elf.c (assign_file_positions_for_load_sections): Adjust offset + for SHT_NOBITS section if first in segment. + +2020-03-24 H.J. Lu + + PR binutils/25708 + * elf-bfd.h (_bfd_elf_get_symbol_version_name): Renamed to ... + (_bfd_elf_get_symbol_version_string): This. + * elf.c (_bfd_elf_get_symbol_version_name): Renamed to ... + (_bfd_elf_get_symbol_version_string): This. + (bfd_elf_print_symbol): Pass TRUE to + _bfd_elf_get_symbol_version_string. + * libbfd-in.h (_bfd_nosymbols_get_symbol_version_string): Add a + bfd_boolean argument. + * syms.c (_bfd_nosymbols_get_symbol_version_string): Likewise. + * targets.c (_bfd_get_symbol_version_string): Likewise. + (bfd_get_symbol_version_string): Likewise. + * bfd-in2.h: Regenerated. + +2020-03-24 Nick Clifton + Jaydeep Chauhan + + PR 25713 + * bfdio.c (_bfd_real_fopen): Add code to handle long filenames on + Win32 systems. + +2020-03-24 Nick Clifton + + PR 25681 + * elf.c (_bfd_elf_map_sections_to_segments): When looking for a + segment to use for PT_GNU_RELRO, ignore empty sections in a + segment's current list. + +2020-03-24 H.J. Lu + + PR binutils/25717 + * elf-bfd.h (elf_obj_tdata): Change num_group to unsigned int. + +2020-03-24 H.J. Lu + + PR binutils/25708 + * elf-bfd.h (_bfd_elf_get_symbol_version_name): New. + * elf.c (_bfd_elf_get_symbol_version_name): New function. Based + on the previous _bfd_elf_get_symbol_version_string. + (_bfd_elf_get_symbol_version_string): Use it. + +2020-03-24 Alan Modra + + * archive.c (_bfd_generic_read_ar_hdr_mag): Sanity check extended + name size. Use bfd_malloc rather than bfd_zmalloc, clearing just + struct areltdata. + +2020-03-23 Sebastian Huber + + * elflink.c (_bfd_elf_tls_setup): Mention .tdata in comment. + +2020-03-23 Alan Modra + + * ecoff.c (_bfd_ecoff_slurp_armap): Sanity check parsed_size and + symbol count. Allocate an extra byte to ensure name strings + are terminated. Sanity check name offsets. Release memory on + error return. + +2020-03-23 Alan Modra + + * i386msdos.c (msdos_object_p): Don't access e_lfanew when that + field hasn't been read. Remove unnecessary casts. + +2020-03-22 Alan Modra + + * coff64-rs6000.c (xcoff64_slurp_armap): Ensure size is large + enough to read number of symbols. + +2020-03-20 H.J. Lu + + * configure.ac (HAVE_EXECUTABLE_SUFFIX): Removed. + (EXECUTABLE_SUFFIX): Likewise. + * config.in: Regenerated. + * configure: Likewise. + * plugin.c (bfd_plugin_close_and_cleanup): Defined as + _bfd_generic_close_and_cleanup. + (plugin_list_entry): Remove resolution_file, resolution_option, + real_bfd, real_nsyms, real_syms, lto_nsyms, lto_syms, gcc, + lto_wrapper, gcc_env and initialized, + (need_lto_wrapper_p): Removed. + (get_lto_wrapper): Likewise. + (setup_lto_wrapper_env): Likewise. + (register_all_symbols_read): Likewise. + (egister_cleanup): Likewise. + (get_symbols): Likewise. + (add_input_file): Likewise. + (bfd_plugin_set_program_name): Remove need_lto_wrapper. + (add_symbols): Updated. + (try_claim): Likewise. + (try_load_plugin): Likewise. + (bfd_plugin_canonicalize_symtab): Likewise. + * plugin.h (bfd_plugin_set_program_name): Remove int argument. + (plugin_data_struct): Remove real_bfd, real_nsyms and real_syms. + +2020-03-19 H.J. Lu + + PR binutils/25640 + * plugin.c (plugin_list_entry): Add has_symbol_type. + (add_symbols_v2): New function. + (bfd_plugin_open_input): Don't invoke LTO wrapper if LTO plugin + provides symbol type. + (try_load_plugin): Add LDPT_ADD_SYMBOLS_V2. + (bfd_plugin_canonicalize_symtab): Use LTO plugin symbol type if + available. + +2020-03-20 Alan Modra + + * coff-rs6000.c (_bfd_xcoff_slurp_armap): Ensure size is large + enough to read number of symbols. + +2020-03-20 Alan Modra + + * elf.c (_bfd_elf_setup_sections): Don't test known non-NULL + backend functions for NULL before calling. + (copy_special_section_fields, _bfd_elf_copy_private_bfd_data), + (bfd_section_from_shdr, assign_section_numbers): Likewise. + * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): Likewise. + * elfnn-ia64.c (ignore_errors): New function. + (elf_backend_link_order_error_handler): Redefine as ignore_errors. + +2020-03-19 Nick Clifton + + PR 25676 + * dwarf2.c (struct varinfo): Add unit_offset field to record the + location of the varinfo in the unit's debug info data. Change the + type of the stack field to a boolean. + (lookup_var_by_offset): New function. Returns the varinfo + structure for the variable described at the given offset in the + unit's debug info. + (scan_unit_for_symbols): Add support for variables which have the + DW_AT_specification attribute. + +2020-03-19 Nick Clifton + + PR 25699 + * elf.c (bfd_elf_set_group_contents): Replace assertion with an + error return. + +2020-03-19 Sebastian Huber + + * elfxx-riscv.c (riscv_parse_subset): Don't use C99. + +2020-03-18 Nick Clifton + + PR 25673 + * elf.c (_bfd_elf_write_secondary_reloc_section): Fix illegal + memory access when processing a corrupt secondary reloc section. + +2020-03-18 Christophe Lyon + + * elf32-arm.c (arm_build_one_stub): Emit a fatal error message + instead of calling abort. + * elf32-csky.c (csky_build_one_stub): Likewise. + * elf32-hppa.c (hppa_build_one_stub): Likewise. + * elf32-m68hc11.c (m68hc11_elf_build_one_stub): Likewise. + * elf32-m68hc12.c (m68hc12_elf_build_one_stub): Likewise. + * elf32-metag.c (metag_build_one_stub): Likewise. + * elf32-nios2.c (nios2_build_one_stub): Likewise. + * elf64-ppc.c (ppc_build_one_stub): Likewise. + (ppc_size_one_stub): Likewise. + * elfnn-aarch64.c (aarch64_build_one_stub): Likewise. + +2020-03-17 Nick Clifton + + PR 25688 + * elf.c (_bfd_elf_copy_special_section_fields): Replace assertions + with error messages. + +2020-03-17 Nick Clifton + + PR 25687 + * elf.c (_bfd_elf_slurp_secondary_reloc_section): Remove redundant + free. Add free on another failure path. + +2020-03-16 Alan Modra + + PR 25675 + * elf.c (elf_sort_segments): Don't call bfd_octets_per_byte unless + we have a non-zero section count. Do lma comparison in octets. + +2020-03-16 Alan Modra + + * vms-alpha.c (dst_restore_location): Validate index into + dst_ptr_offsets array before accessing. Return status. + (dst_retrieve_location): Similarly, making "loc" parameter a + pointer to return value. + (_bfd_vms_slurp_etir): Update calls to above functions. + +2020-03-14 Kamil Rytarowski + + * configure.ac: Include netbsd-core.lo for all NetBSD arm and mips + targets. + * configure: Regenerated. + +2020-03-14 Alan Modra + + * section.c (BFD_FAKE_SECTIONS): Formatting. + * bfd-in2.h: Regenerate. + +2020-03-13 Kamil Rytarowski + + * elf.c (elfcore_grok_netbsd_note): Add support for + NT_NETBSDCORE_LWPSTATUS notes. + +2020-03-13 Christophe Lyon + + * bfd-in2.h: Regenerate. + * section.c (asection): Add already_assigned field. + (BFD_FAKE_SECTION): Add default initializer for it. + * ecoff.c (bfd_debug_section): Initialize already_assigned field. + * elf32-arm.c (arm_build_one_stub): Add support for + non_contiguous_regions. + * elf32-csky.c (csky_build_one_stub): Likewise. + * elf32-hppa.c (hppa_build_one_stub): Likewise. + * elf32-m68hc11.c (m68hc11_elf_build_one_stub): Likewise. + * elf32-m68hc12.c (m68hc12_elf_build_one_stub): Likewise. + * elf32-metag.c (metag_build_one_stub): Likewise. + * elf32-nios2.c (nios2_build_one_stub): Likewise. + * elf64-ppc.c (ppc_build_one_stub): Likewise. + (ppc_size_one_stub): Likewise. + * elfnn-aarch64.c (aarch64_build_one_stub): Likewise. + * elflink.c (elf_link_input_bfd): Likewise. + +2020-03-13 H.J. Lu + + PR ld/24920 + * elf-linker-x86.h (elf_linker_x86_params): Add + static_before_all_inputs and has_dynamic_linker. + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report + dynamic input objects if -static is passed at command-line + before all input files without --dynamic-linker unless + --no-dynamic-linker is used. + +2020-03-13 Kamil Rytarowski + + * elf.c (elfcore_grok_netbsd_note): Add support for aarch64. + +2020-03-13 Christian Eggers + + * bfd.c (bfd_record_phdr): New local "opb". Fix assignment of + "p_paddr" from "at". + * elfcode.h (bfd_from_remote_memory): Add units to several + parameters. New local "opb". Fix usage of p_align. Fix + calculation of "localbase" from "ehdr_vma" and "p_vaddr". Fix + call of target_read_memory. + * elflink.c (elf_fixup_link_order): Fix scope of "s" local. Fix + calculation of "offset" and "output_offset". + (bfd_elf_final_link): New local "opb". Fix calculation of "size" + from "offset" and fix calculation of "end" from "vma+size". Fix + comparison between "sh_addr" and "vma"/"output_offset". + (bfd_elf_discard_info): Fix calculation of "eh_alignment". + * elf-bfd.h (struct elf_link_hash_table): Add unit to tls_size + member. + * elf.c (_bfd_elf_map_sections_to_segments): Add unit (bytes/ + octets) to "wrap_to2 and "phdr_size" locals. Fix calculation of + "wrap_to" value. Add unit (bytes) to phdr_lma variable. Fix + assignment of p_paddr from phdr_lma. Fix comparison between + "lma+size" and "next->lma". + (elf_sort_segments): Fix assignment from p_paddr to lma. + (assign_file_positions_for_load_sections): Add unit (bytes) to + local "align". Fix calculation of local "off_adjust". Fix + calculation of local "filehdr_vaddr". + (assign_file_positions_for_non_load_sections): New local "opb". + Fix calculation of "end" from "p_size". Fix comparison between + "vma+SECTION_SIZE" and "start". Fix calculation of "p_memsz" + from "end" and "p_vaddr". + (rewrite_elf_program_header): Fix comparison between p_vaddr and + vma. Fix assignment to p_paddr from lma. Fix comparison between + p_paddr and lma. Fix assignment to p_paddr from lma. + * merge.c (sec_merge_emit): New local "opb". Convert + "alignment_power" to octets. + (_bfd_add_merge_section): New locals "alignment_power" and + "opb". Fix comparison between "alignment_power" and + "sizeof(align)". + (_bfd_merge_sections): New local "opb". Divide size by opb + before checking align mask. + +2020-03-13 Christian Eggers + + * elf.c (_bfd_elf_make_section_from_shdr): Introduce new temp + opb. Divide Elf_Internal_Shdr::sh_addr by opb when setting + section LMA/VMA. + (_bfd_elf_make_section_from_phdr): Similarly. + (elf_fake_sections): Fix calculation of + Elf_Internal_shdr::sh_addr from section VMA. + (_bfd_elf_map_sections_to_segments): Fix mixup between octets + and bytes. + (assign_file_positions_for_load_sections): Fix calculations of + Elf_Internal_shdr::p_vaddr and p_paddr from section LMA/VMA. Fix + comparison between program header address and section LMA. + (assign_file_positions_for_non_load_sections): Likewise. + (rewrite_elf_program_header): Likewise. Introduce new temp opb. + (IS_CONTAINED_BY_VMA): Add parameter opb. + (IS_CONTAINED_BY_LMA,IS_SECTION_IN_INPUT_SEGMENT, + INCLUDE_SECTION_IN_SEGMENT): Likewise. + (copy_elf_program_header): Update call to ELF_SECTION_IN_SEGMENT. + Fix calculations of p_addr_valid and p_vaddr_offset. + * elflink.c (elf_link_add_object_symbols): Multiply section VMA + with octets per byte when comparing against p_vaddr. + +2020-03-11 Alan Modra + + * som.c (setup_sections): Sanity check subspace.name. + +2020-03-11 Alan Modra + + * elf64-ppc.c (ppc64_elf_inline_plt): Do increment rel in for loop. + +2020-03-10 Alan Modra + + PR 25648 + * ihex.c (ihex_write_object_contents): Don't assume ordering of + addresses here. + +2020-03-09 Alan Modra + + * wasm-module.c (wasm_scan): Sanity check file name length + before allocating memory. Move common section setup code. Do + without bfd_tell to calculate section size. + +2020-03-06 Nick Clifton + + * elf.c (_bfd_elf_set_section_contents): Replace call to abort + with error messages and failure return values. + +2020-03-05 Max Filippov + + * elf32-xtensa.c (shrink_dynamic_reloc_sections): Shrink dynamic + relocation sections for any removed reference to a dynamic symbol. + +2020-03-05 Nick Clifton + + * elf-bfd.h (struct elf_backend_data): Add new fields: + init_secondary_reloc_section, slurp_secondary_reloc_section, + write_secondary_reloc_section. + (_bfd_elf_init_secondary_reloc_section): Prototype. + (_bfd_elf_slurp_secondary_reloc_section): Prototype. + (_bfd_elf_write_secondary_reloc_section): Prototype. + * elf.c ( bfd_section_from_shdr): Invoke the new + init_secondary_reloc_section backend function, if defined, when a + second reloc section is encountered. + (swap_out_syms): Invoke the new symbol_section_index function, if + defined, when computing the section index of an OS/PROC specific + symbol. + (_bfd_elf_init_secondary_reloc_section): New function. + (_bfd_elf_slurp_secondary_reloc_section): New function. + (_bfd_elf_write_secondary_reloc_section): New function. + (_bfd_elf_copy_special_section_fields): New function. + * elfcode.h (elf_write_relocs): Invoke the new + write_secondary_relocs function, if defined, in order to emit + secondary relocs. + (elf_slurp_reloc_table): Invoke the new slurp_secondary_relocs + function, if defined, in order to read in secondary relocs. + * elfxx-target.h (elf_backend_copy_special_section_fields): + Provide a non-NULL default definition. + (elf_backend_init_secondary_reloc_section): Likewise. + (elf_backend_slurp_secondary_reloc_section): Likewise. + (elf_backend_write_secondary_reloc_section): Likewise. + (struct elf_backend_data elfNN_bed): Add initialisers for the new + fields. + * configure.ac (score_elf32_[bl]e_vec): Add elf64.lo + * configure: Regenerate. + +2020-03-05 Alan Modra + + * archive64.c (_bfd_archive_64_bit_slurp_armap): Check parsed_size + against file size before allocating memory. Use bfd_alloc rather + than bfd_zalloc for carsym/strings memory. + +2020-03-04 Alan Modra + + * elf.c (elf_fake_sections): Ensure sh_addralign is such that + sh_addr mod sh_addalign is zero. + +2020-03-04 Alan Modra + + * format.c (bfd_check_format_matches): Call cleanup on error exit. + +2020-03-03 Alan Modra + + * format.c (struct bfd_preserve): Add cleanup field. + (bfd_preserve_save): Add cleanup param and save. + (bfd_preserve_restore): Return cleanup. + (bfd_preserve_finish): Call the cleanup for the discarded match. + (bfd_check_format_matches): Pass cleanup to bfd_preserve_save, + and clear when preserving a match. Restore cleanup too when + restoring that match. + +2020-03-02 Alan Modra + + * cisco-core.c (cisco_core_file_p): Return bfd_cleanup. + * hpux-core.c (hpux_core_core_file_p): Update prototype. + * sco5-core.c (sco5_core_file_p): Return bfd_cleanup. + (core_sco5_vec): Correct initialisers. + +2020-03-02 Alan Modra + + * aix386-core.c (aix386_core_file_p): Return bfd_cleanup. + * aix5ppc-core.c (xcoff64_core_p): Likewise. + * cisco-core.c (cisco_core_file_validate): Likewise. + * hppabsd-core.c (hppabsd_core_core_file_p): Likewise. + * hpux-core.c (hpux_core_core_file_p): Likewise. + * irix-core.c (irix_core_core_file_p): Likewise. + * lynx-core.c (lynx_core_file_p): Likewise. + * netbsd-core.c (netbsd_core_file_p): Likewise. + * osf-core.c (osf_core_core_file_p): Likewise. + * ptrace-core.c (ptrace_unix_core_file_p): Likewise. + * sco5-core.c (sco5_core_file_p): Likewise. + +2020-03-02 H.J. Lu + + * trad-core.c (trad_unix_core_file_p): Return bfd_cleanup. + +2020-03-02 Alan Modra + + * targets.c (bfd_cleanup): New typedef. + (struct bfd <_bfd_check_format>): Return a bfd_cleanup. + * libbfd-in.h (_bfd_no_cleanup): Define. + * format.c (bfd_reinit): Add cleanup parameter, call it. + (bfd_check_format_matches): Set cleanup from _bfd_check_format + call and pass to bfd_reinit. Delete temp, use abfd->xvec instead. + * aout-target.h (callback, object_p): Return bfd_cleanup. + * aout-tic30.c (tic30_aout_callback, tic30_aout_object_p): Likewise. + * archive.c (bfd_generic_archive_p): Likewise. + * binary.c (binary_object_p): Likewise. + * coff-alpha.c (alpha_ecoff_object_p): Likewise. + * coff-ia64.c (ia64coff_object_p): Likewise. + * coff-rs6000.c (_bfd_xcoff_archive_p, rs6000coff_core_p): Likewise. + * coff-sh.c (coff_small_object_p): Likewise. + * coff-stgo32.c (go32_check_format): Likewise. + * coff64-rs6000.c (xcoff64_archive_p, rs6000coff_core_p), + (xcoff64_core_p): Likewise. + * coffgen.c (coff_real_object_p, coff_object_p): Likewise. + * elf-bfd.h (bfd_elf32_object_p, bfd_elf32_core_file_p), + (bfd_elf64_object_p, bfd_elf64_core_file_p): Likewise. + * elfcode.h (elf_object_p): Likewise. + * elfcore.h (elf_core_file_p): Likewise. + * i386msdos.c (msdos_object_p): Likewise. + * ihex.c (ihex_object_p): Likewise. + * libaout.h (some_aout_object_p): Likewise. + * libbfd-in.h (bfd_generic_archive_p, _bfd_dummy_target), + (_bfd_vms_lib_alpha_archive_p, _bfd_vms_lib_ia64_archive_p): Likewise. + * libbfd.c (_bfd_dummy_target): Likewise. + * libcoff-in.h (coff_object_p): Likewise. + * mach-o-aarch64.c (bfd_mach_o_arm64_object_p), + (bfd_mach_o_arm64_core_p): Likewise. + * mach-o-arm.c (bfd_mach_o_arm_object_p), + (bfd_mach_o_arm_core_p): Likewise. + * mach-o-i386.c (bfd_mach_o_i386_object_p), + (bfd_mach_o_i386_core_p): Likewise. + * mach-o-x86-64.c (bfd_mach_o_x86_64_object_p), + (bfd_mach_o_x86_64_core_p): Likewise. + * mach-o.c (bfd_mach_o_header_p, bfd_mach_o_gen_object_p), + (bfd_mach_o_gen_core_p, bfd_mach_o_fat_archive_p): Likewise. + * mach-o.h (bfd_mach_o_object_p, bfd_mach_o_core_p), + (bfd_mach_o_fat_archive_p, bfd_mach_o_header_p): Likewise. + * mmo.c (mmo_object_p): Likewise. + * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise. + * peicode.h (coff_real_object_p, pe_ILF_object_p), + (pe_bfd_object_p): Likewise. + * plugin.c (ld_plugin_object_p, bfd_plugin_object_p): Likewise. + * ppcboot.c (ppcboot_object_p): Likewise. + * rs6000-core.c (rs6000coff_core_p): Likewise. + * som.c (som_object_setup, som_object_p): Likewise. + * srec.c (srec_object_p, symbolsrec_object_p): Likewise. + * tekhex.c (tekhex_object_p): Likewise. + * vms-alpha.c (alpha_vms_object_p): Likewise. + * vms-lib.c (_bfd_vms_lib_archive_p, _bfd_vms_lib_alpha_archive_p), + (_bfd_vms_lib_ia64_archive_p, _bfd_vms_lib_txt_archive_p): Likewise. + * wasm-module.c (wasm_object_p): Likewise. + * xsym.c (bfd_sym_object_p): Likewise. + * xsym.h (bfd_sym_object_p): Likewise. + * aoutx.h (some_aout_object_p): Likewise, and callback parameter + return type. + * pdp11.c (some_aout_object_p): Likewise. + * plugin.c (register_ld_plugin_object_p): Update object_p + parameter type. + * plugin.h (register_ld_plugin_object_p): Likewise. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * libcoff.h: Regenerate. + +2020-03-02 Alan Modra + + * coff-alpha.c (alpha_ecoff_le_vec): Add SEC_SMALL_DATA to + applicable section flags. + * coff-mips.c (mips_ecoff_le_vec, mips_ecoff_be_vec): Likewise. + (mips_ecoff_bele_vec): Likewise. + * coffcode.h (sec_to_styp_flags): Set SEC_SMALL_DATA for .sdata + and .sbss sections. + * ecoff.c (_bfd_ecoff_new_section_hook): Likewise. + (_bfd_ecoff_styp_to_sec_flags): Likewise. + +2020-03-02 Alan Modra + + * elf32-m32r.c (m32r_elf_section_flags): New function. + (elf_backend_section_flags): Define. + * elf32-nds32.c (nds32_elf_section_flags): New function. + (elf_backend_section_flags): Define. + * elf32-ppc.c (ppc_elf_section_from_shdr): Set SEC_SMALL_DATA for + .sbss and .sdata sections. + * elf32-v850.c (v850_elf_section_from_shdr): Set SEC_SMALL_DATA + for SHF_V850_GPREL sections. + * elf64-alpha.c (elf64_alpha_section_from_shdr): Delete outdated + FIXME. + * elf64-hppa.c (elf64_hppa_section_from_shdr): Set SEC_SMALL_DATA + for SHF_PARISC_SHORT sections. + * elf64-ppc.c (ppc64_elf_section_flags): New function. + (elf_backend_section_flags): Define. + * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Set SEC_SMALL_DATA + for SHF_MIPS_GPREL sections. Delete FIXME. + +2020-03-02 Alan Modra + + * elf-bfd.h (elf_backend_section_flags): Remove flagword* param. + * elf.c (_bfd_elf_make_section_from_shdr): Set section flags before + calling elf_backend_section_flags with adjusted params. Use + newsect->flags past that point. + (_bfd_elf_new_section_hook): Always set sh_type and sh_flags for + special sections. + (_bfd_elf_init_private_section_data): Allow normal sh_type sections + to have their type overridden, and all sh_flags but processor and + os specific. + * elf32-arm.c (elf32_arm_section_flags): Adjust for changed params. + * elf32-mep.c (mep_elf_section_flags): Likewise. + * elf32-nios2.c (nios2_elf32_section_flags): Likewise. + * elf64-alpha.c (elf64_alpha_section_flags): Likewise. + * elf64-ia64-vms.c (elf64_ia64_section_flags): Likewise. + * elfnn-ia64.c (elfNN_ia64_section_flags): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Exclude the linker + stub BFD and non-aarch64 input files when scanning for stubs. + +2020-03-02 Alan Modra + + * coff-alpha.c (alpha_ecoff_get_elt_at_filepos): Provide an upper + limit to decompressed element size. + +2020-03-02 Alan Modra + + * vms-lib.c (vms_traverse_index): Add recur_count param and + update calls. Fail on excessive recursion. + +2020-03-02 Alan Modra + + * vms-alpha.c (vms_get_remaining_object_record): Use + bfd_realloc_or_free rather than bfd_realloc. + (add_symbol_entry, vector_grow1, alpha_vms_slurp_relocs): Likewise. + (dst_define_location, parse_module): Likewise, and check realloc + return status before using memory. Return status from function + adjusting all callers. + +2020-02-28 Alan Modra + + * vms-lib.c (_bfd_vms_lib_archive_p): Free memory on error paths. + +2020-02-28 Alan Modra + + * vms-alpha.c (alpha_vms_object_p): Use _bfd_malloc_and_read. + Remove duplicate undersize check. + +2020-02-27 Alan Modra + + PR 24511 + * mmo.c (mmo_scan): Set SEC_DATA for .data. + +2020-02-27 Alan Modra + + PR 24511 + * syms.c (stt): Trim off all but 'e', 'i' and 'p' entries. + (coff_section_type): Adjust comment. + (decode_section_type): Likewise. Call coff_section_type before + decode_section_type. + (bfd_decode_symclass): Use 'c' for common sections other than + the standard one. + +2020-02-27 Alan Modra + + * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Put all data in one + malloc'd block. + +2020-02-27 Alan Modra + + * bfd.c (bfd_stat_arch_elt): Use vector of containing archive, + if file is an archive element. + * bfd-in2.h: Regenerate. + +2020-02-26 Alan Modra + + * archive.c (do_slurp_bsd_armap): Increase minimum parsed_size, and + bfd_set_error on failing test. Don't bother changing bfd_error on + file read error. Check symdef_count is multiple of BSD_SYMDEF_SIZE. + Check sym name is within string buffer. Use size_t for some vars. + (do_slurp_coff_armap): Use size_t for some variables, fix size of + int_buf. Don't change bfd_error on file read error. Use + _bfd_mul_overflow when calculating carsym buffer size. Reorder + calculations to catch overflows before they occur. malloc and + free raw armap rather than using bfd_alloc. Read raw armap before + allocating carsym+strings buffer. + (_bfd_slurp_extended_name_table): Localize variables. Check + name size against file size. + +2020-02-26 Alan Modra + + * vms-lib.c (vms_lib_read_index): Release correct buffer. + +2020-02-26 Alan Modra + + * elf32-rx.c (rx_elf_relocate_section): Use bfd_malloc rather than + malloc. Check for NULL return from bfd_malloc. + (rx_table_find, rx_table_map): Likewise. + (rx_set_section_contents): Check bfd_alloc return. + (rx_dump_symtab): Don't alloc internal_syms or external_syms. + +2020-02-26 Alan Modra + + * aoutx.h: Indent labels correctly. Format error strings. + * archive.c: Likewise. + * archive64.c: Likewise. + * coff-arm.c: Likewise. + * coff-rs6000.c: Likewise. + * coff-stgo32.c: Likewise. + * cpu-arm.c: Likewise. + * dwarf2.c: Likewise. + * elf-ifunc.c: Likewise. + * elf-properties.c: Likewise. + * elf-s390-common.c: Likewise. + * elf-strtab.c: Likewise. + * elf.c: Likewise. + * elf32-arm.c: Likewise. + * elf32-bfin.c: Likewise. + * elf32-cr16.c: Likewise. + * elf32-csky.c: Likewise. + * elf32-i386.c: Likewise. + * elf32-m68k.c: Likewise. + * elf32-msp430.c: Likewise. + * elf32-nds32.c: Likewise. + * elf32-nios2.c: Likewise. + * elf32-pru.c: Likewise. + * elf32-xtensa.c: Likewise. + * elf64-ia64-vms.c: Likewise. + * elf64-x86-64.c: Likewise. + * elfcode.h: Likewise. + * elfcore.h: Likewise. + * elflink.c: Likewise. + * elfnn-aarch64.c: Likewise. + * elfnn-ia64.c: Likewise. + * elfnn-riscv.c: Likewise. + * elfxx-mips.c: Likewise. + * elfxx-sparc.c: Likewise. + * elfxx-x86.c: Likewise. + * i386lynx.c: Likewise. + * merge.c: Likewise. + * pdp11.c: Likewise. + * plugin.c: Likewise. + * reloc.c: Likewise. + +2020-02-26 Alan Modra + + PR 25593 + * elf-bfd.h (struct elf_link_hash_table): Rename "loaded" to + "dyn_loaded". + (bfd_elf_add_dt_needed_tag): Declare. + * elf-strtab.c (_bfd_elf_strtab_restore): Handle NULL buf. + * elflink.c (bfd_elf_add_dt_needed_tag): Make global and rename + from elf_add_dt_needed_tag. Remove soname and doit param. + (elf_link_add_object_symbols): Don't use elf_add_dt_needed_tag + to see whether as-needed lib is already loaded, use dyn_loaded + list instead. When saving and restoring around as-needed lib + handle possibility that dynstr has not been initialised. Don't + add DT_NEEDED tags here. Limit dyn_loaded list to dynamic libs. + Mark libs loaded via DT_NEEDED entries of other libs with + DYN_NO_NEEDED if they should not be mentioned in DT_NEEDED of + the output. + (elf_link_check_versioned_symbol): Remove now unneccesary + DYNAMIC check when traversing dyn_loaded list. + +2020-02-26 Alan Modra + + * bfdio.c (bfd_get_file_size): Ignore bogus archive element sizes. + +2020-02-25 H.J. Lu + + PR binutils/25584 + * plugin.c (need_lto_wrapper_p): New. + (bfd_plugin_set_program_name): Add an int argument to set + need_lto_wrapper_p. + (get_lto_wrapper): Return FALSE if need_lto_wrapper_p isn't + set. + * plugin.h (bfd_plugin_set_program_name): Add an int argument. + +2020-02-24 Alan Modra + + * vms-lib.c (_bfd_vms_lib_archive_p): Correct overflow checks. + +2020-02-24 Alan Modra + + * vms-lib.c (struct carsym_mem): Add limit. + (vms_add_index): Heed limit. + (vms_traverse_index): Catch buffer overflows. Remove outdated fixme. + (vms_lib_read_index): Set up limit. Catch 32-bit overflow. + Always return actual number read. + (_bfd_vms_lib_archive_p): Catch buffer overflows. Replace + assertion with error exit. + +2020-02-22 Alan Modra + + PR 25585 + * elf.c (assign_file_positions_for_load_sections): Continue linking + on "PHDR segment not covered by LOAD segment" errors. + +2020-02-21 Alan Modra + + * mach-o.c (bfd_mach_o_canonicalize_relocs): Fix ineffective + overflow check. + (bfd_mach_o_canonicalize_reloc): Likewise. + (bfd_mach_o_canonicalize_dynamic_reloc): Likewise. Sanity check + counts and offsets against file size. + (bfd_mach_o_build_dysymtab): Fix ineffective overflow check. + (bfd_mach_o_mangle_sections): Remove unnecessary overflow check. + (bfd_mach_o_read_symtab_symbols): Sanity check count and offset + against file size. Delete symbol table error message. + (bfd_mach_o_read_dysymtab): Sanity check counts and offsets + against file size. + (bfd_mach_o_read_symtab): Likewise. + (bfd_mach_o_read_command): Pass file size. + (bfd_mach_o_scan): Sanity check command count against file size. + +2020-02-21 Alan Modra + + PR 25569 + * aoutx.h (adjust_o_magic, adjust_z_magic, adjust_n_magic): Use + "text", "data" and "bss" section pointer vars. Don't update + section size, just exec header sizes. + (adjust_sizes_and_vmas): Don't update text section size. Set + initial exec header a_text. Print exec headers sizes. + * pdp11.c (adjust_o_magic, adjust_z_magic, adjust_n_magic), + (adjust_sizes_and_vmas): Similarly. Formatting. + (final_link): Correct final file extension. + +2020-02-20 Nick Clifton + + * elf-bfd.h (struct elf_backend_data): Add symbol_section_index + callback. + * elfxx-target.h (elf_backend_symbol_section_index): Provide + default definition. + (elfNN_bed): Initialise the symbol_section_index field. + * elf.c (swap_out_syms): Call symbol_section_index, if defined, on + OS and PROC specific section indicies. Warn if converting other + reserved incidies to SHN_ABS. + +2020-02-19 Sergey Belyashov + + PR 25537 + * cpu-z80.c: Add machine type compatibility checking. + +2020-02-19 H.J. Lu + + PR binutils/25355 + * plugin.c (plugin_list_entry): Remove handle. + (try_load_plugin): Call dlclose before return. + +2020-02-19 Alan Modra + + * libbfd-in.h (_bfd_constant_p): Define. + (_bfd_alloc_and_read, _bfd_malloc_and_read): Check read size against + file size before allocating memory. + * coffgen.c (_bfd_coff_get_external_symbols): Remove file size check. + * elf.c (bfd_elf_get_str_section): Likewise. + (_bfd_elf_slurp_version_tables): Likewise. + * libbfd.h: Regenerate. + +2020-02-19 Alan Modra + + * libbfd-in.h (_bfd_alloc_and_read, _bfd_malloc_and_read): New. + * aoutx.h (aout_get_external_symbols): Replace calls to + bfd_[m]alloc and bfd_bread with call to _bfd_[m]alloc_and_read. + (slurp_reloc_table): Likewise. + * archive.c (do_slurp_bsd_armap): Likewise. + (do_slurp_coff_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. + * coffcode.h (coff_set_arch_mach_hook, buy_and_read): Likewise. + * coffgen.c (coff_real_object_p, coff_object_p, build_debug_section), + (_bfd_coff_get_external_symbols): Likewise. + * ecoff.c (ecoff_slurp_symbolic_header), + (_bfd_ecoff_slurp_symbolic_info, ecoff_slurp_reloc_table), + (_bfd_ecoff_slurp_armap, ecoff_link_add_object_symbols, READ), + (ecoff_indirect_link_order): Likewise. + * elf.c (bfd_elf_get_str_section, setup_group, elf_read_notes), + (_bfd_elf_slurp_version_tables): Likewise. + * elf32-m32c.c (m32c_elf_relax_section): Likewise. + * elf32-rl78.c (rl78_elf_relax_section): Likewise. + * elf32-rx.c (elf32_rx_relax_section): Likewise. + * elf64-alpha.c (READ): Likewise. + * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Likewise. + * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Likewise. + * elfcode.h (elf_slurp_symbol_table), + (elf_slurp_reloc_table_from_section): Likewise. + * elflink.c (elf_link_add_object_symbols), + (elf_link_check_versioned_symbol): Likewise. + * elfxx-mips.c (READ): Likewise. + * i386lynx.c (slurp_reloc_table): Likewise. + * lynx-core.c (lynx_core_file_p): Likewise. + * mach-o.c (bfd_mach_o_canonicalize_relocs), + (bfd_mach_o_read_symtab_strtab, bfd_mach_o_alloc_and_read), + (bfd_mach_o_read_prebound_dylib, bfd_mach_o_read_dyld_content + * pdp11.c (aout_get_external_symbols, slurp_reloc_table + * pef.c (bfd_pef_print_loader_section, bfd_pef_scan_start_address), + (bfd_pef_parse_symbols): Likewise. + * peicode.h (pe_ILF_object_p, pe_bfd_object_p + * som.c (setup_sections, som_slurp_string_table), + (som_slurp_reloc_table, som_bfd_count_ar_symbols), + (som_bfd_fill_in_ar_symbols): Likewise. + * vms-alpha.c (module_find_nearest_line, evax_bfd_print_dst), + (evax_bfd_print_image): Likewise. + * vms-lib.c (_bfd_vms_lib_archive_p): Likewise. + * wasm-module.c (wasm_scan): Likewise. + * xcofflink.c (xcoff_link_add_symbols): Likewise. + * xsym.c (bfd_sym_read_name_table), + (bfd_sym_print_type_information_table_entry): Likewise. + * libbfd.h: Regenerate. + +2020-02-19 Alan Modra + + * aoutx.h (slurp_reloc_table): Allocate reloc_cache after + reading external relocs. + * ecoff.c (ecoff_slurp_reloc_table): Likewise. + * archive.c (_bfd_write_archive_contents): Don't twiddle bfd_error + after bfd_bread. + * archive64.c (_bfd_archive_64_bit_slurp_armap): Remove unnecessary + bfd_release. + * elf32-m32c.c (m32c_offset_for_reloc): Make shndx_buf a bfd_byte*. + (m32c_elf_relax_section): Likewise. + * elf32-rl78.c (rl78_offset_for_reloc): Likewise. + (rl78_elf_relax_section): Likewise. + * elf32-rx.c (rx_offset_for_reloc): Likewise. + (elf32_rx_relax_section): Likewise. + * mach-o.c (bfd_mach_o_alloc_and_read): Move earlier with better + parameter types and use.. + (bfd_mach_o_read_dylinker, bfd_mach_o_read_dylib), + (bfd_mach_o_read_fvmlib, bfd_mach_o_read_str): ..in these functions. + * peicode.h (pe_bfd_object_p): Don't zero the part of opthdr + being read from file, just the extra. + * som.c (som_slurp_symbol_table): Allocate internal symbol buffer + after reading external syms. Free on failure. + +2020-02-19 Alan Modra + + * coffcode.h (buy_and_read, coff_slurp_line_table), + (coff_slurp_symbol_table, coff_slurp_reloc_table): Replace + bfd_[z][m]alloc2 calls with _bfd_mul_overflow followed by the + corresponding bfd_alloc call. Adjust variables to suit. + * coffgen.c (_bfd_coff_get_external_symbols): Likewise. + * ecoff.c (_bfd_ecoff_slurp_symbolic_info), + (_bfd_ecoff_slurp_symbol_table, READ): Likewise. + * elf.c (bfd_elf_get_elf_syms, setup_group, bfd_section_from_shdr), + (swap_out_syms, _bfd_elf_slurp_version_tables): Likewise. + * elf32-m32c.c (m32c_elf_relax_section): Likewise. + * elf32-rl78.c (rl78_elf_relax_section): Likewise. + * elf32-rx.c (elf32_rx_relax_section): Likewise. + * elf64-alpha.c (READ): Likewise. + * elfcode.h (elf_object_p, elf_write_relocs, elf_write_shdrs_and_ehdr), + (elf_slurp_symbol_table, elf_slurp_reloc_table), + (bfd_from_remote_memory): Likewise. + * elfcore.h (core_find_build_id): Likewise. + * elfxx-mips.c (READ): Likewise. + * mach-o.c (bfd_mach_o_mangle_sections), + (bfd_mach_o_read_symtab_symbols, bfd_mach_o_read_thread), + (bfd_mach_o_read_dysymtab, bfd_mach_o_flatten_sections), + (bfd_mach_o_scan, bfd_mach_o_fat_archive_p): Likewise. + * som.c (setup_sections, som_prep_for_fixups) + (som_build_and_write_symbol_table, som_slurp_symbol_table), + (som_slurp_reloc_table, som_bfd_count_ar_symbols), + (som_bfd_fill_in_ar_symbols, som_slurp_armap), + (som_bfd_ar_write_symbol_stuff): Likewise. + * vms-alpha.c (vector_grow1): Likewise. + * vms-lib.c (vms_add_index): Likewise. + * wasm-module.c (wasm_scan_name_function_section): Likewise. + * libbfd.c (bfd_malloc2, bfd_realloc2, bfd_zmalloc2): Delete. + * opncls.c (bfd_alloc2, bfd_zalloc2): Delete. + * libbfd-in.h (bfd_malloc2, bfd_realloc2, bfd_zmalloc2), + (bfd_alloc2, bfd_zalloc2): Delete. + (_bfd_mul_overflow): Define. + * libbfd.h: Regenerate. + +2020-02-19 Alan Modra + + * elf.c (bfd_section_from_shdr): Use bfd_zalloc rather than + bfd_zalloc2. + (assign_section_numbers): Likewise. + (elf_map_symbols): Likewise, and bfd_alloc rather than bfd_alloc2. + (_bfd_elf_map_sections_to_segments): Use bfd_malloc rather than + bfd_malloc2, size_t amt, and unsigned tls_count. + (rewrite_elf_program_header): Use bfd_malloc and size_t amt. + * elflink.c (elf_create_symbuf): Use bfd_malloc. + (elf_output_implib): Use bfd_alloc. + +2020-02-19 Alan Modra + + * bfd.c (struct bfd): Move format and direction to other + bitfields. Add "size". + * bfdio.c (bfd_get_size): Cache size when not writing file. + * opncls.c (bfd_get_debug_link_info_1): Allow for bfd_get_size + returning zero, ie. unknown. + (bfd_get_alt_debug_link_info): Likewise. + * bfd-in2.h: Regenerate. + +2020-02-19 Alan Modra + + * coffgen.c (_bfd_coff_get_external_symbols): Don't call + bfd_get_file_size twice. + (_bfd_coff_read_string_table): Allow for bfd_get_file_size + zero, ie. unknown, return. + * elf-attrs.c (_bfd_elf_parse_attributes): Likewise. + * elfcode.h (elf_swap_shdr_in): Likewise. + (elf_object_p): Don't call bfd_get_file_size twice and correct + file size check. + +2020-02-19 Alan Modra + + * mach-o.c (bfd_mach_o_flatten_sections): Return a bfd_boolean, + FALSE if memory alloc fails. Adjust calls. + * som.c (som_prep_for_fixups): Likewise. + * vms-alpha.c (alpha_vms_add_fixup_lp, alpha_vms_add_fixup_ca), + (alpha_vms_add_fixup_qr, alpha_vms_add_fixup_lr), + (alpha_vms_add_lw_reloc, alpha_vms_add_qw_reloc): Likewise. + * som.c (som_build_and_write_symbol_table): Return via error_return + on seek failure. + * vms-alpha.c (VEC_APPEND): Adjust for vector_grow1 changes. + (VEC_APPEND_EL): Delete. + (vector_grow1): Return pointer to element. Catch overflow. + Return NULL on memory allocation failure. + (alpha_vms_add_fixup_lp): Replace VEC_APPEND_EL with VEC_APPEND. + (alpha_vms_add_fixup_ca): Likewise. + (alpha_vms_link_add_object_symbols): Check VEC_APPEND result + before using. + * elf.c (bfd_section_from_shdr): Check bfd_zalloc2 result. + +2020-02-19 Alan Modra + + * aix386-core.c (aix386_core_file_p): Use size_t for "amt". + * aout-target.h (object_p): Likewise. + * aout-tic30.c (tic30_aout_object_p): Likewise. + * aoutx.h (some_aout_object_p, mkobject, make_empty_symbol), + (emit_stringtab, write_syms, link_hash_table_create), + (aout_link_write_other_symbol): Likewise. + * archive.c (_bfd_generic_mkarchive, bfd_generic_archive_p), + (bfd_ar_hdr_from_filesystem, _bfd_write_archive_contents), + (_bfd_compute_and_write_armap): Likewise. + * archures.c (bfd_arch_list): Likewise. + * bfd.c (bfd_record_phdr): Likewise. + * binary.c (binary_canonicalize_symtab): Likewise. + * cisco-core.c (cisco_core_file_validate): Likewise. + * coff-arm.c (coff_arm_link_hash_table_create, find_thumb_glue), + (find_arm_glue, record_arm_to_thumb_glue), + (record_thumb_to_arm_glue): Likewise. + * coff-ppc.c (ppc_coff_link_hash_table_create, record_toc), + (ppc_allocate_toc_section): Likewise. + * coff-rs6000.c (_bfd_xcoff_mkobject, _bfd_xcoff_archive_p): Likewise. + * coff-sh.c (sh_relax_section): Likewise. + * coff64-rs6000.c (xcoff64_archive_p): Likewise. + * coffcode.h (handle_COMDAT, coff_new_section_hook), + (coff_set_alignment_hook, coff_mkobject), + (coff_compute_section_file_positions): Likewise. + * coffgen.c (coff_make_empty_symbol, coff_bfd_make_debug_symbol), + (coff_find_nearest_line_with_names), + ( bfd_coff_set_symbol_class): Likewise. + * cofflink.c (_bfd_coff_link_hash_table_create), + (_bfd_coff_link_input_bfd): Likewise. + * dwarf1.c (alloc_dwarf1_unit, alloc_dwarf1_func): Likewise. + * dwarf2.c (read_abbrevs, read_attribute_value, add_line_info), + (build_line_info_table, sort_line_sequences), + (line_info_add_include_dir, line_info_add_file_name), + (decode_line_info, scan_unit_for_symbols, parse_comp_unit), + (place_sections, _bfd_dwarf2_slurp_debug_info): Likewise. + * ecoff.c (_bfd_ecoff_mkobject, _bfd_ecoff_make_empty_symbol), + (_bfd_ecoff_find_nearest_line), + (_bfd_ecoff_bfd_link_hash_table_create): Likewise. + * ecofflink.c (bfd_ecoff_debug_init): Likewise. + * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Likewise. + * elf-m10300.c (mn10300_elf_relax_section), + (elf32_mn10300_link_hash_table_create): Likewise. + * elf-strtab.c (_bfd_elf_strtab_init): Likewise. + * elf.c (make_mapping, copy_elf_program_header): Likewise. + * elf32-arm.c (elf32_arm_link_hash_table_create), + (elf32_arm_setup_section_lists, elf32_arm_check_relocs), + (elf32_arm_new_section_hook): Likewise. + * elf32-avr.c (elf_avr_new_section_hook), + (elf32_avr_link_hash_table_create, get_local_syms), + (elf32_avr_setup_section_lists): Likewise. + * elf32-bfin.c (bfinfdpic_elf_link_hash_table_create), + (bfin_link_hash_table_create): Likewise. + * elf32-cr16.c (elf32_cr16_link_hash_table_create): Likewise. + * elf32-cris.c (elf_cris_link_hash_table_create): Likewise. + * elf32-csky.c (csky_elf_link_hash_table_create), + (csky_elf_check_relocs, elf32_csky_setup_section_lists): Likewise. + * elf32-frv.c (frvfdpic_elf_link_hash_table_create): Likewise. + * elf32-hppa.c (elf32_hppa_link_hash_table_create), + (elf32_hppa_setup_section_lists, get_local_syms): Likewise. + * elf32-i386.c (elf_i386_check_relocs): Likewise. + * elf32-lm32.c (lm32_elf_link_hash_table_create): Likewise. + * elf32-m32r.c (m32r_elf_link_hash_table_create), + (m32r_elf_check_relocs): Likewise. + * elf32-m68hc1x.c (m68hc11_elf_hash_table_create), + (elf32_m68hc11_setup_section_lists), + (elf32_m68hc11_size_stubs): Likewise. + * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise. + * elf32-metag.c (elf_metag_link_hash_table_create), + (elf_metag_setup_section_lists): Likewise. + * elf32-microblaze.c (microblaze_elf_link_hash_table_create), + (microblaze_elf_check_relocs): Likewise. + * elf32-nds32.c (nds32_elf_link_hash_table_create), + (nds32_elf_check_relocs): Likewise. + * elf32-nios2.c (nios2_elf32_setup_section_lists), + (get_local_syms, nios2_elf32_check_relocs), + (nios2_elf32_link_hash_table_create): Likewise. + * elf32-or1k.c (or1k_elf_link_hash_table_create), + (or1k_elf_check_relocs): Likewise. + * elf32-ppc.c (ppc_elf_modify_segment_map, update_plt_info): Likewise. + * elf32-pru.c (pru_elf32_link_hash_table_create): Likewise. + * elf32-s390.c (elf_s390_link_hash_table_create), + (elf_s390_check_relocs): Likewise. + * elf32-score.c (score_elf_create_got_section), + (s3_elf32_score_new_section_hook), + (elf32_score_link_hash_table_create): Likewise. + * elf32-score7.c (score_elf_create_got_section), + (s7_elf32_score_new_section_hook): Likewise. + * elf32-sh.c (sh_elf_link_hash_table_create), + (sh_elf_check_relocs): Likewise. + * elf32-tic6x.c (elf32_tic6x_link_hash_table_create), + (elf32_tic6x_new_section_hook, elf32_tic6x_check_relocs): Likewise. + * elf32-tilepro.c (tilepro_elf_link_hash_table_create), + (tilepro_elf_check_relocs): Likewise. + * elf32-v850.c (remember_hi16s_reloc): Likewise. + * elf32-vax.c (elf_vax_link_hash_table_create): Likewise. + * elf32-xtensa.c (elf_xtensa_link_hash_table_create), + (elf_xtensa_new_section_hook): Likewise. + * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create), + (get_got_entry, elf64_alpha_check_relocs): Likewise. + * elf64-hppa.c (elf64_hppa_hash_table_create): Likewise. + * elf64-ia64-vms.c (elf64_ia64_object_p): Likewise. + * elf64-mmix.c (mmix_elf_new_section_hook): Likewise. + * elf64-ppc.c (ppc64_elf_new_section_hook), + (ppc64_elf_link_hash_table_create, update_local_sym_info), + (update_plt_info, ppc64_elf_check_relocs): Likewise. + * elf64-s390.c (elf_s390_link_hash_table_create), + (elf_s390_check_relocs): Likewise. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + * elflink.c (bfd_elf_link_record_local_dynamic_symbol), + (_bfd_elf_link_find_version_dependencies, elf_link_add_object_symbols), + (elf_link_add_archive_symbols, compute_bucket_count), + (bfd_elf_size_dynsym_hash_dynstr, _bfd_elf_link_hash_table_create), + (bfd_elf_get_bfd_needed_list, elf_link_swap_symbols_out), + (bfd_elf_final_link): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_link_hash_table_create), + (elfNN_aarch64_setup_section_lists, elfNN_aarch64_check_relocs), + (elfNN_aarch64_new_section_hook): Likewise. + * elfnn-ia64.c (elfNN_ia64_object_p): Likewise. + * elfnn-riscv.c (riscv_elf_link_hash_table_create), + (riscv_elf_check_relocs): Likewise. + * elfxx-mips.c (_bfd_mips_elf_new_section_hook), + (_bfd_mips_elf_add_symbol_hook, _bfd_mips_elf_check_relocs), + (_bfd_mips_elf_modify_segment_map, _bfd_mips_elf_set_section_contents), + (_bfd_mips_elf_link_hash_table_create): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_link_hash_table_create), + (_bfd_sparc_elf_check_relocs), + (_bfd_sparc_elf_new_section_hook): Likewise. + * elfxx-tilegx.c (tilegx_elf_link_hash_table_create), + (tilegx_elf_check_relocs): Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Likewise. + * format.c (bfd_check_format_matches): Likewise. + * hash.c (_bfd_stringtab_init): Likewise. + * ihex.c (ihex_scan): Likewise. + * irix-core.c (irix_core_core_file_p): Likewise. + * linker.c (bfd_wrapped_link_hash_lookup), + (_bfd_generic_link_hash_table_create), + (_bfd_generic_reloc_link_order): Likewise. + * lynx-core.c (lynx_core_file_p): Likewise. + * netbsd-core.c (netbsd_core_file_p): Likewise. + * osf-core.c (osf_core_core_file_p): Likewise. + * pdp11.c (some_aout_object_p, mkobject, make_empty_symbol), + (link_hash_table_create, aout_link_write_other_symbol): Likewise. + * peXXigen.c (_bfd_XX_bfd_copy_private_section_data): Likewise. + * peicode.h (pe_mkobject): Likewise. + * ppcboot.c (ppcboot_mkobject, ppcboot_canonicalize_symtab): Likewise. + * ptrace-core.c (ptrace_unix_core_file_p): Likewise. + * sco5-core.c (read_uarea): Likewise. + * som.c (hppa_som_gen_reloc_type, som_object_p, som_prep_headers), + (som_write_fixups, som_write_space_strings, som_write_symbol_strings), + (som_finish_writing, som_canonicalize_symtab, som_new_section_hook), + (som_bfd_copy_private_section_data, bfd_som_set_section_attributes), + (bfd_som_attach_aux_hdr, som_write_armap): Likewise. + * srec.c (srec_scan): Likewise. + * syms.c (_bfd_generic_make_empty_symbol): Likewise. + * targets.c (bfd_target_list): Likewise. + * tekhex.c (first_phase, tekhex_sizeof_headers): Likewise. + * trad-core.c (trad_unix_core_file_p): Likewise. + * vms-alpha.c (vms_initialize, alpha_vms_bfd_link_hash_table_create), + (vms_new_section_hook): Likewise. + * wasm-module.c (wasm_make_empty_symbol): Likewise. + * xcofflink.c (xcoff_get_section_contents), + (_bfd_xcoff_bfd_link_hash_table_create, xcoff_set_import_path), + (xcoff_find_function, bfd_xcoff_link_record_set, xcoff_build_ldsym), + (bfd_xcoff_size_dynamic_sections, xcoff_link_input_bfd): Likewise. + +2020-02-19 Alan Modra + + * elfxx-riscv.c (riscv_multi_letter_ext_valid_p): Don't use C99. + +2020-02-13 H.J. Lu + + * plugin.c (try_load_plugin): Make plugin_list_iter an argument + and use it if it isn't NULL. Remove has_plugin_p argument. Add + a build_list_p argument. Don't search plugin_list. Short circuit + when building the plugin list. + (has_plugin): Renamed to has_plugin_list. + (bfd_plugin_set_plugin): Don't set has_plugin. + (bfd_plugin_specified_p): Check plugin_list instead. + (build_plugin_list): New function. + (load_plugin): Call build_plugin_list and use plugin_list. + +2020-02-11 H.J. Lu + + PR binutils/25355 + * plugin.c (try_claim): Always clean up for LTO wrapper. + (try_load_plugin): Treat each object as independent. Create a + copy for plugin name. + +2020-02-11 Nick Clifton + + * elf32-msp430.c (msp430_final_link_relocate): Always use longs + for addresses in print statements. + (msp430_elf_relax_delete_bytes): Likewise. + (msp430_elf_relax_add_words): Likewise. + (msp430_elf_relax_section): Likewise. + +2020-02-11 H.J. Lu + + * plugin.c (add_symbols): Clear plugin_data memory. + +2020-02-10 H.J. Lu + + PR binutils/25355 + * configure.ac (HAVE_EXECUTABLE_SUFFIX): New AC_DEFINE. + (EXECUTABLE_SUFFIX): Likewise. + * config.in: Regenerated. + * configure: Likewise. + * plugin.c (bfd_plugin_close_and_cleanup): Removed. + (plugin_list_entry): Add all_symbols_read, cleanup_handler, + gcc, lto_wrapper, resolution_file, resolution_option, gcc_env, + real_bfd, real_nsyms, real_syms, lto_nsyms and lto_syms. + (get_lto_wrapper): New. + (setup_lto_wrapper_env): Likewise. + (current_plugin): Likewise. + (register_all_symbols_read): Likewise. + (register_cleanup): Likewise. + (get_symbols): Likewise. + (add_input_file): Likewise. + (bfd_plugin_close_and_cleanup): Likewise. + (claim_file): Removed. + (register_claim_file): Set current_plugin->claim_file. + (add_symbols): Make a copy of LTO symbols. Set lto_nsyms and + lto_syms in current_plugin. + (try_claim): Use current_plugin->claim_file. Call LTO plugin + all_symbols_read handler. Copy real symbols to plugin_data. + Call LTO plugin cleanup handler. Clean up for LTO wrapper. + (try_load_plugin): Don't reuse the previous plugin for LTO + wrapper. Set up GCC LTO wrapper if possible. Don't set + plugin_list_iter->claim_file. + (bfd_plugin_canonicalize_symtab): Use real LTO symbols if + possible. + * plugin.h (plugin_data_struct): Add real_bfd, real_nsyms and + real_syms. + +2020-02-10 Jozef Lawrynowicz + + * elf32-msp430.c (msp430_elf_relax_section): Before relaxing a branch, + check if previous instruction matches a conditional jump inserted + earlier. Invert conditional jump and delete branch in this case. + +2020-02-10 Jozef Lawrynowicz + + * elf32-msp430.c (msp430_elf_relax_add_two_words): Rename to + msp430_elf_relax_add_words. Support insertion of either one or two + words. + (msp430_elf_relax_section): Catch opcode of 0x3c00 when relocation + needs to be grown. Handle insertion of branch instruction to replace + jump. + +2020-02-10 Jozef Lawrynowicz + + * elf32-msp430.c (msp430_final_link_relocate): Add printf statements for + debugging relocations. + (msp430_elf_relax_delete_bytes): Likewise. + (msp430_elf_relax_add_two_words): Likewise. + (msp430_elf_relax_section): Likewise. + +2020-02-10 Alan Modra + + * archures.c: Wrap overlong z80 comments. + * bfd-in2.h: Regenerate. + +2020-02-07 Sergey Belyashov + + PR 25469 + * archures.c: Add GBZ80 and Z80N machine values. + * reloc.c: Add BFD_RELOC_Z80_16_BE. + * coff-z80.c: Add support for new reloc. + * coffcode.h: Add support for new machine values. + * cpu-z80.c: Add support for new machine names. + * elf32-z80.c: Add support for new reloc. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + +2020-02-07 Nick Clifton + + PR 23932 + * elf.c (rewrite_elf_program_header): Do not complain if no + sections are mapped to a segment. + +2020-02-06 H.J. Lu + + PR ld/25490 + * elflink.c (_bfd_elf_gc_mark_extra_sections): Issue an error + for garbage collection on __patchable_function_entries section + without linked-to section. + +2020-02-06 H.J. Lu + + PR gas/25381 + * bfd-in2.h: Regenerated. + * elflink.c (_bfd_elf_gc_mark_extra_sections): Call mark_hook + on section if gc_mark of any of its linked-to sections is set + and don't set gc_mark again. + * section.c (asection): Add linked_to_symbol_name to map_head + union. + +2020-02-06 Maciej W. Rozycki + + * elf32-v850.c (v850_elf_relax_section): Fix the index used for + reporting an unrecognized instruction with R_V850_LONGJUMP. + +2020-02-05 Alan Modra + + * elf64-ppc.c (ppc_stub_plt_branch): Match comment with reality. + +2020-02-04 Alan Modra + + * elf32-ppc.c (ppc_elf_relocate_section): After applying + R_PPC_VLE_ADDR20, goto copy_reloc. + +2020-02-02 H.J. Lu + + * bfd-in2.h: Regenerated. + * section.c (SEC_ASSEMBLER_SECTION_ID): Fix a typo in comments. + +2020-02-02 H.J. Lu + + PR gas/25380 + * bfd-in2.h: Regenerated. + * ecoff.c (bfd_debug_section): Add section_id. + * section.c (bfd_section): Add section_id. + (SEC_ASSEMBLER_SECTION_ID): New. + (BFD_FAKE_SECTION): Add section_id. + +2020-02-01 Nick Clifton + + * config.bfd: Move the c30-aout and tic30-aout targets onto the + obsolete list. + +2020-01-31 Sandra Loosemore + + * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): DW_EH_PE_datarel + encodings are relative to the GOT on nios2, too. + +2020-01-31 Alan Modra + + * Makefile.am (elf32-target.h, elf64-target.h): Don't use a temp + file. Use $< and $@ in rules. + (elf32-aarch64.c, elf64-aarch64.c): Likewise. + (elf32-ia64.c, elf64-ia64.c): Likewise. + (elf32-riscv.c, elf64-riscv.c): Likewise. + (peigen.c, pepigen.c, pex64igen.c): Likewise. + (elf32-aarch64.c, elf64-aarch64.c): Don't emit $srcdir on #line. + (elf32-riscv.c, elf64-riscv.c): Likewise, and use $(SED). + (elf32-ia64.c, elf64-ia64.c): Do emit #line. + (peigen.c, pepigen.c, pex64igen.c): Likewise. + * Makefile.in: Regenerate. + +2020-01-31 Alan Modra + + PR 4110 + * elf.c (setup_group): Don't clear entire section contents, + just the padding after group flags. Release alloc'd memory + after a seek or read failure. + +2020-01-16 Jon Turney + + * peXXigen.c (pe_is_repro): New function. + (_bfd_XX_print_private_bfd_data_common): Note timestamp is + actually a build hash if PE_IMAGE_DEBUG_TYPE_REPRO is present. + +2020-01-16 Jon Turney + + * peXXigen.c (debug_type_names): Add names for new debug data type + values. + +2020-01-16 Jon Turney + + * peXXigen.c (pe_print_debugdata): Fix the iteration variable for + inner loop. Fix a memory leak. + +2020-01-30 Alan Modra + + * coffgen.c (coff_real_object_p): Don't clear obj_coff_keep_syms + or obj_coff_keep_strings here. + (coff_get_normalized_symtab): Free external syms directly. + * xcofflink.c (xcoff_link_input_bfd): Restore obj_coff_keep_syms + on error exit path. + +2020-01-27 Jim Wilson + + * cpu-riscv.c (riscv_scan): New. + (N): Change bfd_default_scan to riscv_scan. + +2020-01-27 Andreas Schwab + + * Makefile.am (ALL_MACHINES): Remove cpu-plugin.lo. + (ALL_MACHINES_CFILES): Remove cpu-plugin.c. + * Makefile.in: Regenerate. + * cpu-plugin.c: Remove. + * archures.c (enum bfd_architecture): Remove bfd_arch_plugin. + (bfd_plugin_arch): Remove declaration. + * bfd-in2.h: Regenerate. + * po/SRC-POTFILES.in: Regenerate. + +2020-01-27 H.J. Lu + Alan Modra + + PR ld/25458 + * elflink.c (_bfd_elf_gc_mark_rsec): Mark all weak aliases. + +2020-01-24 Jim Wilson + + * elfxx-riscv.c (riscv_get_prefix_class): Format s case like others. + (riscv_parse_prefixed_ext): Fix s extension comment and reword to + avoid over long line. + +2020-01-24 Nick Clifton + + PR 25447 + * coffgen.c (_bfd_coff_close_and_cleanup): Do not clear the keep + syms and keep strings flags as these may have been set in order to + prevent a bogus call to free. + +2020-01-23 Nick Clifton + + * po/fr.po: Updated French translation. + +2020-01-23 Alan Modra + + PR 25444 + * elf.c (assign_file_positions_for_load_sections): Avoid divide + by zero when p_align is zero. + +2020-01-22 Maxim Blinov + + * bfd/elfnn-riscv.c (riscv_skip_prefix): New. + (riscv_prefix_cmp): Likewise. + (riscv_non_std_ext_p): Deleted. + (riscv_std_sv_ext_p): Likewise. + (riscv_non_std_sv_ext_p): Likewise. + (riscv_merge_non_std_and_sv_ext): Rename to... + (riscv_merge_multi_letter_ext): and modified to use riscv_prefix_cmp. + (riscv_merge_arch_attr_info): Replace 3 calls to + riscv_merge_non_std_and_sv_ext with single call to + riscv_merge_multi_letter_ext. + * bfd/elfxx-riscv.c (riscv_parse_std_ext): Break if we + encounter a 'z' prefix. + (riscv_get_prefix_class): New function, return prefix class based + on first few characters of input string. + (riscv_parse_config): New structure to factor out minor differences + in extension class parsing behaviour. + (riscv_parse_sv_or_non_std_ext): Rename to... + (riscv_parse_prefixed_ext): and parameterise with + riscv_parse_config. + (riscv_std_z_ext_strtab, riscv_std_s_ext_strtab): New. + (riscv_multi_letter_ext_valid_p): New. + (riscv_ext_x_valid_p, riscv_ext_z_valid_p, riscv_ext_s_valid_p): New. + (riscv_parse_subset): Delegate all non-single-letter parsing work + to riscv_parse_prefixed_ext. + * bfd/elfxx-riscv.h (riscv_isa_ext_class): New type. + (riscv_get_prefix_class): Declare. + +2020-01-22 Alan Modra + + * elf64-ppc.c (struct ppc_link_hash_table): Add tga_group. + (ppc64_elf_archive_symbol_lookup): Extract __tls_get_addr_opt for + __tls_get_addr_desc. + (ppc64_elf_size_stubs): Add section for linker generated + __tls_get_addr_desc wrapper function. Loop at least once if + generating this function. + (emit_tga_desc, emit_tga_desc_eh_frame): New functions. + (ppc64_elf_build_stubs): Generate __tls_get_addr_desc. + +2020-01-22 Alan Modra + + * elf64-ppc.h (struct ppc64_elf_params): Add no_tls_get_addr_regsave. + * elf64-ppc.c (struct ppc_link_hash_table): Add tga_desc and + tga_desc_fd. + (is_tls_get_addr): Match tga_desc and tga_desc_df too. + (STDU_R1_0R1, ADDI_R1_R1): Define. + (tls_get_addr_prologue, tls_get_addr_epilogue): New functions. + (ppc64_elf_tls_setup): Set up tga_desc and tga_desc_fd. Indirect + tga_desc_fd to opt_fd, and tga_desc to opt. Set + no_tls_get_addr_regsave. + (branch_reloc_hash_match): Add hash3 and hash4. + (ppc64_elf_tls_optimize): Handle tga_desc_fd and tga_desc too. + (ppc64_elf_size_dynamic_sections): Likewise. + (ppc64_elf_relocate_section): Likewise. + (plt_stub_size, build_plt_stub): Likewise. Size regsave + __tls_get_addr stub. + (build_tls_get_addr_stub): Build regsave __tls_get_addr stub and + eh_frame. + (ppc_size_one_stub): Handle tga_desc_fd and tga_desc too. Size + eh_frame for regsave __tls_get_addr. + +2020-01-22 Alan Modra + + * elf64-ppc.c (ppc64_elf_size_stubs): Correct condition under + which __tls_get_addr calls will be eliminated. + +2020-01-20 Nick Clifton + + * po/pt.po: Updates Portuguese translation. + * po/ru.po: Updated Russian translation. + * po/uk.po: Updated Ukranian translation. + +2020-01-20 H.J. Lu + + PR ld/25416 + * elf64-x86-64.c (elf_x86_64_check_tls_transition): Support + "rex leal x@tlsdesc(%rip), %reg" and "call *x@tlsdesc(%eax)" in + X32 mode. + (elf_x86_64_relocate_section): In x32 mode, for GDesc -> LE + transition, relax "rex leal x@tlsdesc(%rip), %reg" to + "rex movl $x@tpoff, %reg", for GDesc -> IE transition, relax + "rex leal x@tlsdesc(%rip), %reg" to + "rex movl x@gottpoff(%rip), %eax". For both transitions, relax + "call *(%eax)" to "nopl (%rax)". + +2020-01-20 Alan Modra + + * elf64-ppc.c (LD_R11_0R3, CMPDI_R11_0, STD_R11_0R1, LD_R11_0R1), + (MTLR_R11): Don't define. + (LD_R0_0R3, CMPDI_R0_0): Define. + (build_tls_get_addr_stub): Don't use r11 in stub. + +2020-01-20 Alan Modra + + * elf64-ppc.c (ppc_elf_hash_entry): New function, use throughout file. + (defined_sym_val, is_tls_get_addr): Likewise. + +2020-01-18 Nick Clifton + + * version.m4 (BFD_VERSION): Set to 2.34.50. + * configure: Regenerate. + * po/bfd.pot: Regenerate. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-17 Christian Biesinger + + * coff-arm.c: Fix spelling error (seperate). + * elfxx-riscv.c (riscv_parse_sv_or_non_std_ext): Fix spelling + error (seperate). + * sysdep.h (strnlen): Fix spelling error (seperate). + +2020-01-15 Lars Brinkhoff + + PR 20694 + * pdp11.c (TARGET_PAGE_SIZE): Set to 8192. + +2020-01-15 Alan Modra + + PR 25384 + * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Update comment. + (ppc64_elf_adjust_dynamic_symbol): Don't allow .dynbss copies + of function symbols unless dot symbols are present. Do warn + whenever one is created, regardles of whether a PLT entry is + also emitted for the function symbol. + +2020-01-14 Alan Modra + + * som.c (som_bfd_count_ar_symbols): Error when file position + of symbols on chains is not strictly increasing. + +2020-01-14 Alan Modra + + * vms.h (VMS_DEBUG): Define as 0. + * vms-alpha.c (image_write): Move debug output after bounds check. + Tidy bounds check. + (_bfd_vms_slurp_eihd): Warning fix. + (_bfd_vms_slurp_etir): Init variables to avoid bogus warnings. + +2020-01-13 Alan Modra + + * vms-alpha.c (_bfd_vms_slurp_egsd): Ensure minimum size even + for "ignored" records. + +2020-01-13 Alan Modra + + * wasm-module.c (wasm_scan_name_function_section): Formatting. + Delete asect name check. Move asect NULL check to wasm_object_p. + Correct bounds check of sizes against end. Replace uses of + bfd_zalloc with bfd_alloc, zeroing only necessary bytes. Use + just one bfd_release. + (wasm_scan): Don't use malloc/strdup for section names, + bfd_alloc instead. Simplify code prefixing section name. + Formatting. Don't attempt to free memory here.. + (wasm_object_p): ..do so here. + +2020-01-10 Szabolcs Nagy + + PR ld/22269 + * elf32-arm.c (elf32_arm_final_link_relocate): Use + UNDEFWEAK_NO_DYNAMIC_RELOC. + (allocate_dynrelocs_for_symbol): Likewise. + +2020-01-10 Tamar Christina + + PR 25210 + * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Remove elfclass. + +2020-01-10 Alan Modra + + * coff-alpha.c (alpha_ecoff_object_p): Calculate size in bfd_size_type. + +2020-01-09 Nick Clifton + + PR 25221 + * bfd.c (bfd_convert_section_contents): Check for a compress + header size that is larger than the actual section size. + +2020-01-08 Alan Modra + + PR 25351 + * elflink.c (bfd_elf_final_link): Call _bfd_fix_excluded_sec_syms + after removing sections. + +2020-01-06 Jim Wilson + + PR 25205 + * elfnn-riscv.c (riscv_elf_relocate_section) : Add + check for !bfd_link_pic (info). + : Move next to R_RISCV_CALL. + : Add comment. + (_bfd_riscv_relax_section): For plt.offset check, add check for + bfd_link_pic (info). Add comment. + +2020-01-06 Alan Modra + + * format.c (bfd_check_format_matches): Ignore bfd_error on target + match failures. Don't init to bfd_error_wrong_format before + calling _bfd_check_format. + +2020-01-06 Alan Modra + + * vms-alpha.c (_bfd_vms_push, _bfd_vms_pop): Return pass/fail + status rather than exiting on stack overflow or underflow. + (_bfd_vms_slurp_etir): Adjust to suit. + +2020-01-06 Alan Modra + + * som.c (som_bfd_fill_in_ar_symbols): Bounds check som_dict index. + +2020-01-06 Alan Modra + + * mach-o.c (bfd_mach_o_read_dylinker): Don't read past end of + command. Check name offset is within command. + (bfd_mach_o_read_dylib, bfd_mach_o_read_prebound_dylib), + (bfd_mach_o_read_prebind_cksum, bfd_mach_o_read_twolevel_hints), + (bfd_mach_o_read_fvmlib, bfd_mach_o_read_dysymtab), + (bfd_mach_o_read_symtab, bfd_mach_o_read_uuid), + (bfd_mach_o_read_linkedit, bfd_mach_o_read_str), + (bfd_mach_o_read_dyld_info, bfd_mach_o_read_version_min), + (bfd_mach_o_read_encryption_info, bfd_mach_o_read_source_version), + (bfd_mach_o_read_encryption_info_64, bfd_mach_o_read_main), + (bfd_mach_o_read_note, bfd_mach_o_read_build_version), + (bfd_mach_o_read_segment): Similarly. + (bfd_mach_o_read_thread): Properly bound check thread struct. + Don't repeat checks on second loop. + (bfd_mach_o_read_command): Fail on invalid command length. + +2020-01-04 Alan Modra + + * format.c (bfd_check_format_matches): Add preserve_match. + Save initial bfd state in "preserve", matched bfd state in + "preserve_match". Save just the first match. Release + bfd_alloc memory. Restore and finish preserved state as + appropriate on all function exit paths. + +2020-01-04 Alan Modra + + * mmo.c (mmo_mkobject): Allocate tdata with bfd_zalloc. + +2020-01-04 Alan Modra + + * coffgen.c (coff_real_object_p): Free malloc'd memory on target + match too. + +2020-01-03 Nick Clifton + + PR 25307 + (bfd_pef_parse_function_stubs): Correct the test that ensures that + there is enough data remaining in the code buffer before + attempting to read a function stub. + +2020-01-03 Nick Clifton + + PR 25308 + * elf-properties.c (_bfd_elf_convert_gnu_properties): Check the + return value from bfd_malloc. + * elf32-arm.c (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise. + (bfd_elf32_arm_stm32l4xx_fix_veneer_locations): Likewise. + (elf32_arm_filter_cmse_symbols): Likewise. + (elf32_arm_write_section): Likewise. + * mach-o.c (bfd_mach_o_core_fetch_environment): Likewise. + (bfd_mach_o_follow_dsym): Likewise. + * pef.c (bfd_pef_print_loader_section): Likewise. + (bfd_pef_scan_start_address): Likewise. + (bfd_pef_parse_function_stubs): Likewise. + (bfd_pef_parse_symbols): Likewise. + +2020-01-03 Sergei Trofimovich + + * elfnn-ia64.c (elfNN_ia64_merge_private_bfd_data): don't fail + on binary inputs ld/PR25316. + (is_ia64_elf): new helper to filter on ia64 objects. + +2020-01-03 Jan Beulich + + * mach-o.c (cpusubtype, bfd_mach_o_header_p): Insert underscore + in parameter names. + (bfd_mach_o_scan): Insert underscore in two variable names. + +2020-01-02 Sergey Belyashov + + * Makefile.am: Add z80-elf target support. + * configure.ac: Likewise. + * targets.c: Likewise. + * Makefile.in: Regenerate. + * configure: Regenerate. + * config.bfd: Add z80-elf target support and new arches: ez80 and + z180. + * elf32-z80.c: New file. + * archures.c: Add new z80 architectures: eZ80 and Z180. + * coffcode.h: Likewise. + * cpu-z80.c: Likewise. + * coff-z80.c: Add new relocations for Z80 target and local label + check. + * reloc.c: Add new relocs. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + +2020-01-02 Tamar Christina + + PR 25210 + PR 24753 + * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Set ELF class. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2019 + +Copyright (C) 2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 7bd55845686..cf5fd0bb4c2 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,2072 +1,6 @@ -2020-12-31 Alan Modra - - PR 27128 - * nm.c (print_symname): Append version string to symbol name - before printing the lot under control of "form". Append version - to demangled names too. - -2020-12-29 H.J. Lu - - * elfedit (usage): Pass osabi to reconcat. - -2020-12-28 H.J. Lu - - * testsuite/binutils-all/compress.exp (test_gnu_debuglink): Pass - $gcc_gas_flag to target_compile. - -2020-12-24 Alan Modra - - * readelf.c (INT64_MIN): Define if not already defined. - (print_vms_time): Catch 64-bit overflow when converting from - vms time to posix time. Don't segfault if gmtime returns NULL. - -2020-12-23 H.J. Lu - - * NEWS: Mention LAM_U48 and LAM_U57 support. - * elfedit.c (elf_x86_feature): Support lam_u48 and lam_u57. - (usage): Add lam_u48 and lam_u57. - * readelf.c (decode_x86_feature_1): Support LAM_U48 and LAM_U57. - * doc/binutils.texi: Update elfedit with lam_u48 and lam_u57 - support. - * testsuite/binutils-all/x86-64/lam-u48.d: New file. - * testsuite/binutils-all/x86-64/lam-u48.s: Likewise. - * testsuite/binutils-all/x86-64/lam-u57.d: Likewise. - * testsuite/binutils-all/x86-64/lam-u57.s: Likewise. - -2020-12-15 Vivek Das Mohapatra - - * readelf.c (get_dynamic_type): Handle DT_GNU_FLAGS_1. - (process_dynamic_section): Likewise. - -2020-12-11 Cary Coutant - - * readelf.c (get_machine_name): Update list of e_machine values. - -2020-12-11 Sebastian Huber - - * ar.c (write_archive): Cast iostream pointer to FILE *. - * arsup.c (ar_save): Likewise. - * objcopy.c (copy_file): Likewise. - -2020-12-07 Nick Clifton - - * objcopy.c (is_mergeable_note_section): Remove reference to - SHF_GNU_BUILD_NOTE. - -2020-12-07 Siddhesh Poyarekar - - PR 26945 - * ar.c - (write_archive) [!defined (_WIN32) || defined (__CYGWIN32__)]: - Initialize TARGET_STAT and OFD to pass to SMART_RENAME. - * arsup.c - (ar_save) [defined (_WIN32) || defined (__CYGWIN32__)]: - Likewise. - * bucomm.h (smart_rename): Add new arguments to declaration. - * objcopy.c - (strip_main)[defined (_WIN32) || defined (__CYGWIN32__)]: - Initialize COPYFD and pass to SMART_RENAME. - (copy_main) [defined (_WIN32) || defined (__CYGWIN32__)]: - Likewise. - * rename.c (try_preserve_permissions): New function. - (smart_rename): Use it and add new arguments. - -2020-12-07 Siddhesh Poyarekar - - PR 26945 - * objcopy.c (copy_file): New argument IN_STAT. Return stat of - ibfd through it. - (strip_main): Remove redundant stat calls. adjust copy_file - calls. - (copy_main): Likewise. - -2020-12-07 Siddhesh Poyarekar - - PR 26945 - * bucomm.c (make_tempname): Add argument to return file - descriptor. - * bucomm.h (make_tempname): Likewise. - * ar.c: Include libbfd.h. - (write_archive): Adjust for change in make_tempname. Call - bfd_fdopenw instead of bfd_openw. - * objcopy.c: Include libbfd.h. - (copy_file): New argument OFD. Use bfd_fdopenw instead of - bfd_openw. - (strip_main): Adjust for change in make_tempname and - copy_file. - (copy_main): Likewise. - - -2020-12-07 Nick Clifton - - * README-how-to-make-a-release (point releases): Add a note to - update the milestone list on sourceware's bugzilla. - -2020-12-04 Alan Modra - - * dwarf.c (frame_display_row): Do without static variable "sloc". - (cu_tu_indexes_read): Move to file scope. - (free_debug_memory): Reset it here, along with level_type_signed. - Free and clear a number of other static variables. - * readelf.c (arm_attr_public_tag ): Constify, updating.. - (arm_attr_tag_*): ..all these uses. - (process_mips_specific): Free "rels" on error path. - -2020-11-27 Nick Clifton - - PR 26865 - * windres.c (main): If the preprocessor name includes spaces, - ensure that it is quoted. - -2020-11-27 Jozef Lawrynowicz - - * testsuite/lib/binutils-common.exp (supports_noinit_section): New. - (supports_persistent_section): New. - -2020-11-23 Nick Alcock - - * readelf.c (dump_section_as_ctf): Call ctf_arc_symsect_endianness. - -2020-11-25 Alan Modra - - * testsuite/binutils-all/nm.exp (ifunc): xfail more targets. - -2020-11-20 Nick Alcock - - * readelf.c (dump_section_as_ctf): Use .dynsym and .dynstr, not - .symtab and .strtab. - -2020-11-20 Nick Alcock - - * objdump.c (dump_ctf): Report errors from ctf_archive_iter. - * readelf.c (dump_section_as_ctf): Likewise. - -2020-11-20 Nick Alcock - - * objdump.c (dump_ctf): Use ctf_dict_open, not - ctf_arc_open_by_name. - * readelf.c (dump_section_as_ctf): Likewise. - -2020-11-20 Nick Alcock - - * objdump.c (dump_ctf_errs): Rename ctf_file_t to ctf_dict_t. - (dump_ctf_archive_member): Likewise. - (dump_ctf): Likewise. Use ctf_dict_close, not ctf_file_close. - * readelf.c (dump_ctf_errs): Rename ctf_file_t to ctf_dict_t. - (dump_ctf_archive_member): Likewise. - (dump_section_as_ctf): Likewise. Use ctf_dict_close, not - ctf_file_close. - -2020-11-20 Nick Clifton - - PR 22967 - * nm.c (ifunc_type_chars): New variable. - (long_options): Add --ifunc-chars. - (print_symbol): Use ifunc_type_chars for ifunc symbols. - (main): Handle the new option. - * doc/binutils.texi: Document the new option. - * configure.ac: Add --enable-f-for-ifunc-symbols option which - changes the default symbol displayed by nm. - * NEWS: Mention the new feature. - * testsuite/binutils-all/nm.exp: Test the new feature. - * config.in: Regenerate. - * configure: Regenerate. - -2020-11-20 Linda Zhang - - PR 20979 - * dllwrap.c (main): Deprecate and warn the use of dllwrap. - -2020-11-20 Jozef Lawrynowicz - - * testsuite/binutils-all/readelf-maskos-1a.d: Fix test for unrecognized - bit set in SHF_MASKOS range. - * testsuite/binutils-all/readelf-maskos-1b.d: Likewise. - * testsuite/binutils-all/readelf-maskos-unknown.s: New test. - -2020-11-18 Jozef Lawrynowicz - - * NEWS: Announce SHF_GNU_RETAIN support. - * readelf.c (get_elf_section_flags): Handle SHF_GNU_RETAIN. - Recognize SHF_GNU_RETAIN and SHF_GNU_MBIND only for supported OSABIs. - * testsuite/binutils-all/readelf.exp: Run new tests. - Don't run run_dump_test when there isn't an assembler available. - * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Adjust - comment. - * testsuite/binutils-all/readelf-maskos-1a.d: New test. - * testsuite/binutils-all/readelf-maskos-1b.d: New test. - * testsuite/binutils-all/readelf-maskos.s: New test. - * testsuite/binutils-all/retain1.s: New test. - * testsuite/binutils-all/retain1a.d: New test. - * testsuite/binutils-all/retain1b.d: New test. - -2020-11-17 Howard Chu - - * ar.c (main): Place the libdeps record in the second archive - slot. - -2020-11-13 Nick Clifton - - PR 26829 - * dwarf.c (struct dwo_info): Add cu_offset field. - (add_dwo_info): Add cu_offset parameter. Record in new dwo_info - struct. - (add_dwo_name): Add cu_offset field. - (add_dwo_dir): Add cu_offset field. - (add_dwo_id): Add cu_offset field. - (read_and_display_attr_value): Pass cu_offset to dwo recording - functions. - (load_separate_debug_files): Accumulate name, dir and id values - and display once for each CU. - * testsuite/binutils-all/dwo.sL Use a separate CU for the second - dwo link. - * testsuite/binutils-all/readelf.k2: Update expected output. - -2020-11-11 Bernd Edlinger - - * dwarf.c (display_debug_rnglists_list): Only bias the - DW_RLS_offset_pair with the base address. - -2020-11-10 Nick Clifton - - * dwarf.c (skip_attr_bytes): Correctly handle DW_FORM_ref8. - (get_type_abbrev_from_form): Accept DW_FORM_ref8. - -2020-11-09 Andreas Schwab - - * Makefile.am (development.exp): Fix regexp. - * Makefile.in: Regenerate. - -2020-11-09 Nick Clifton - - PR 26847 - * dwarf.c (read_and_display_attr_value): In wide mode, display the - name of the form. - -2020-11-09 Alan Modra - - * elfedit (usage): Avoid false positive "may be used uninitialised". - Don't leak memory. - -2020-11-09 Howard Chu - - * ar.c (main): Use plugin_target rather than "target" when - resetting libdeps_bfd target. - -2020-11-06 H.J. Lu - - * elfedit.c: Include "libiberty.h". - (usage): Update help message. - -2020-11-03 Howard Chu - - * ar.c (long_options): Add --record-libdeps. - (usage): Mention the new option. - (decode_options): Handle the new option. - (replace_members): If necessary, create a bfd to hold the libdeps - description. - * binemul.c (ar_emul_append_bfd): New function. - (ar_emul_replace_bfd): New function. - (ar_emul_default_append): Replace file_name and target arguments - with new_bfd argument. - (ar_emul_default_replace): Likewise. - * binemul.h: Update prototypes. - (struct bin_emulation_xfer_struct): Update fields. - * doc/binutils.texi: Document the new option. - * NEWS: Mention the new feature. - * emul_aix.c (ar_emul_aix_append): Update. - (ar_emul_aix_replace): Likewise. - * testsuite/binutils-all/ar.exp: Add test of new feature. - -2020-10-30 H.J. Lu - - PR gas/26703 - * readelf.c (decode_x86_isa): Handle - * GNU_PROPERTY_X86_ISA_1_BASELINE. - * testsuite/binutils-all/i386/empty.d: Updated. - * testsuite/binutils-all/i386/ibt.d: Likewise. - * testsuite/binutils-all/i386/pr21231a.d: Likewise. - * testsuite/binutils-all/i386/pr21231b.d: Likewise. - * testsuite/binutils-all/i386/shstk.d: Likewise. - * testsuite/binutils-all/x86-64/empty-x32.d: Likewise. - * testsuite/binutils-all/x86-64/empty.d: Likewise. - * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise. - * testsuite/binutils-all/x86-64/ibt.d: Likewise. - * testsuite/binutils-all/x86-64/pr21231a.d: Likewise. - * testsuite/binutils-all/x86-64/pr21231b.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494a.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494c.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494d.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494e.d: Likewise. - * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise. - * testsuite/binutils-all/x86-64/shstk.d: Likewise. - -2020-10-29 H.J. Lu - - PR binutils/26808 - * dwarf.c (abbrev_list): Add abbrev_base. - (new_abbrev_list): Add an abbrev_base argument and record it. - (find_abbrev_list_by_abbrev_offset): Add an abbrev_base argument - and match it. - (process_debug_info): Pass abbrev_base to new_abbrev_list and - find_abbrev_list_by_abbrev_offset. - (display_debug_abbrev): Pass 0 abbrev_base to new_abbrev_list - and find_abbrev_list_by_abbrev_offset. - * testsuite/binutils-all/x86-64/pr26808.dump: New file. - * testsuite/binutils-all/x86-64/pr26808.dwp.bz2: Likewise. - * testsuite/binutils-all/x86-64/x86-64.exp: Run PR binutils/26808 - test. - -2020-10-29 Nick Clifton - - PR 26805 - * objcopy.c (is_dwo_section): Check for missing or short section - names. - -2020-10-26 Andreas Rammhold - - * README-how-to-make-a-release: Use sha256sum instead of md5sum. - -2020-10-28 Nick Clifton - - PR 26795 - * elfedit.c (process_archive): Remove spurious call to free(). - -2020-10-27 Nick Clifton - - * dwarf.c (struct abbrev_list): New structure. Used to collect - lists of abbreviation sets. - (struct abbrev_map): New structure. Used to map CU offsets to - abbreviation offsets. - (record_abbrev_list): New function. A new entry to an - abbreviation list. - (free_all_abbrevs): Update to free abbreviation lists. - (new_abbrev_list): New function. Start a new abbreviation - list. - (find_abbrev_list_by_abbrev_offset): New function. - (find_abbrev_map_by_offset): New function. - (add_abbrev): Add abbrev_list parameter. - (add_abbrev_attr): Likewise. - (process_abbrev_section): Rename to process_abbrev_set and add - list parameter. - (get_type_abbrev_from_form): New function. Attempts to decode the - forms used by DW_AT_type attributes. - (get_type_signedness): Display type names if operating in wide - mode. Use get_type_abbrev_from_form. - (read_and_display_attr_value): Use get_type_abbrev_from_form. - (process_debug_info): Pre-parse the CU headers to collate all the - abbrevs before starting the main scan. - (process_debug_abbrev): Do not free any loaded abbrevs. - (free_debug_memory): Free the abbrev maps. - -2020-10-22 H.J. Lu - - * testsuite/binutils-all/objcopy.exp (objcopy_test): Report - error message on error. - -2020-10-22 Dr. David Alan Gilbert - - * windmc.c (write_header_define): Fix printf format. - (write_header): Likewise. - -2020-10-21 Nick Clifton - - * dwarf.c (skip_attr_bytes): Accept DWARF versions higher than 4 - when processing the DW_FORM_ref_addr form. - Skip bytes in DW_FORM_block and DW_FORM_exprloc forms. - Handle DW_FORM_indirect. - (get_type_signedness): Allow a limited amount of recursion. - Do not attempt to decode types that use the DW_FORM_ref_addr form. - (read_and_display_attr_value): Do not attempt to decode types - that use the DW_FORM_ref_addr form. - -2020-10-20 Alan Modra - - * readelf.c: Delete whitespace at end of line throughout. - (SECTION_NAME, SECTION_NAME_VALID): New. - (SECTION_NAME_PRINT): Rename from SECTION_NAME. Formatting. - (printable_section_name, dump_relocations): Use SECTION_NAME_PRINT. - (process_section_headers, process_section_groups): Likewise. - (shdr_to_ctf_sect): Likewise. - (find_section, find_section_in_set): Use SECTION_NAME_VALID. - (ia64_process_unwind, hppa_process_unwind): Likewise. - (display_debug_section, initialise_dumps_byname): Likewise. - (process_lto_symbol_tables): Likewise. Check trailing period of - lto symbol table names. - (display_lto_symtab): Use sizeof instead of strlen. - -2020-10-20 Nelson Chu - - * MAINTAINERS (RISC-V): Add myself as RISC-V co-maintainer. - -2020-10-19 Nick Clifton - - * readelf.c (do_lto_syms): New local. - (long_option_values): Add OPTION_LTO_SYMS. - (options): Add --lto-syms. - (usage): Mention the new option. - (parse_args): Parse the new option. - (get_lto_kind): New function. - (get_lto_visibility): New function. - (get_lto_sym_type): New function. - (display_lto_symtab): New function - displays the contents of an - LTo symbol table section. - (process_lto_symbol_tables): New functions. Calls - dipslay_lto_symtab on any LTO symbol table section. - (process_object_file): Call process_lto_symbol_tables. - * doc/binutils.texi: Document the new option. - * NEWS: Mention the new feature. - -2020-10-09 H.J. Lu - - PR gas/26703 - * readelf.c (decode_x86_compat_2_isa): New function. - (decode_x86_isa): Updated for new X86_ISA_1_XXX bits. - (decode_x86_feature_1): Handle GNU_PROPERTY_X86_FEATURE_2_MASK. - (print_gnu_property_note): Handle X86_COMPAT_2_ISA_1_USED, - and X86_COMPAT_2_ISA_1_NEEDED. - * testsuite/binutils-all/i386/pr21231b.s: Updated to the current - GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED - values. - * testsuite/binutils-all/x86-64/pr21231b.s: Likewise. - * testsuite/binutils-all/x86-64/pr23494a.s: Likewise. - * testsuite/binutils-all/x86-64/pr23494b.s: Likewise. - * testsuite/binutils-all/x86-64/pr23494c.s: Likewise. - * testsuite/binutils-all/i386/empty.d: Updated. - * testsuite/binutils-all/i386/ibt.d: Likewise. - * testsuite/binutils-all/i386/pr21231a.d: Likewise. - * testsuite/binutils-all/i386/pr21231b.d: Likewise. - * testsuite/binutils-all/i386/shstk.d: Likewise. - * testsuite/binutils-all/x86-64/empty-x32.d: Likewise. - * testsuite/binutils-all/x86-64/empty.d: Likewise. - * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise. - * testsuite/binutils-all/x86-64/ibt.d: Likewise. - * testsuite/binutils-all/x86-64/pr21231a.d: Likewise. - * testsuite/binutils-all/x86-64/pr21231b.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494a.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494c.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494d.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494e.d: Likewise. - * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise. - * testsuite/binutils-all/x86-64/shstk.d: Likewise. - -2020-10-06 Nick Clifton - - * objcopy.c (copy_object): Compare input and output sections by - pointer rather than name. - -2020-10-05 Nick Clifton - - PR 26698 - * windmc.c (mc_unify_path): Fix typo checking character at end of - pathname. - -2020-10-05 Samanta Navarro - - * doc/binutils.texi: Fix spelling mistakes. - -2020-09-29 Mark Wielaard - - * dwarf.c (display_loclists_list): Handle DW_LLE_start_end and - DW_LLE_start_length. Only add base_address for DW_LLE_offset_pair. - -2020-09-25 Alan Modra - - * elfcomm.c (byte_put_little_endian, byte_put_big_endian): Support - more field sizes. - * readelf.c (target_specific_reloc_handling ): Limit - allowed reloc_size. Don't read_leb128 outside of section. - -2020-09-23 Mark Wielaard - - * dwarf.c (process_debug_info): Print Unit Type for DWARF5. - * testsuite/binutils-all/dw5.W: Adjust expected output. - * testsuite/binutils-all/dwarf-attributes.W: Likewise. - -2020-09-23 Mark Wielaard - - * dwarf.c (read_and_display_attr_value): Handle DW_FORM_ref_addr - for dwarf_version 5 just as version 3 and 4 (only 2 is - different). - (process_debug_info): Allow DW_UT_partial. - -2020-09-24 Nick Clifton - - PR 26662 - * doc/binutils.texi (nm): Document that 'c' is used for small - common symbols. - -2020-09-21 Ludovic Courtès - - * doc/binutils.texi (objcopy, strip): Say that - '--strip-unneeded' implies '--strip-debug'. - -2020-09-16 Anatoly Parshintsev - - * verilog.c (verilog_write_address): Properly handle 64-bit - addresses to avoid truncation of the high part. - -2020-09-16 Alan Modra - - * nm.c (print_symbol): Adjust elf_symbol_from invocation. - * objcopy.c (is_hidden_symbol): Likewise. - -2020-09-15 Nick Clifton - - * README-how-to-make-a-release (https): Add a reminder to create a - new Bugzilla tag for the point release, once it has been published. - -2020-09-11 H.J. Lu - - * readelf.c (get_note_type): Support NT_X86_CET. - -2020-09-11 Nick Clifton - - PR 26595 - * dwarf.c (load_separate_debug_info): Return NULL rather than - FALSE in error situations. - (load_separate_debug_file): Move code to load debug links to ... - (check_for_and_load_links): ... here. New function. Load - separate debug information pointed to by debuglink and - debugaltlink sections. Recursively scan newly loaded debug - information for more links and load them too. - -2020-09-09 Alan Modra - - PR 26578 - * dwarf.c (parse_gnu_debugaltlink): Don't alloc build_id_data. - (load_separate_debug_files): Use a stack var for build_id_data. - -2020-09-08 H.J. Lu - - PR ld/26587 - * testsuite/binutils-all/objcopy.exp: Pass --disable-reloc-section - to ld on PE targets for PR 25662 test. - -2020-09-08 Jozef Lawrynowicz - Kuan-Lin Chen - - * readelf.c (target_specific_reloc_handling): Handle - R_MSP430{,X}_GNU_{SET,SUB}_ULEB128. - -2020-09-02 Alan Modra - - * objdump.c (disassemble_bytes): Use an unsigned type for "addend". - -2020-08-30 Alan Modra - - * readelf.c (print_gnu_build_attribute_name): Use unsigned long - long for "bytes". - -2020-08-28 Nick Clifton - - PR 26548 - * dwarf.c (read_leb128): When checking for overflow of a signed - read, use a signed shift. - -2020-08-28 Cooper Qu - - * readelf.c (get_csky_section_type_name): New. - (get_section_type_name): Add handler for CSKY. - (display_csky_attribute): New. - (process_arch_specific): Add handler for CSKY. - * testsuite/binutils-all/strip-3.d: Remove .csky.attributes - section. - -2020-08-27 Jozef Lawrynowicz - - * readelf.c (get_msp430x_section_type_name): Rename to ... - (get_msp430_section_type_name): ... this. - (get_section_type_name): Use get_msp430_section_type_name. - (display_msp430x_attribute): Rename to ... - (display_msp430_attribute): ... this. - (process_arch_specific): Use display_msp430_attribute. - -2020-08-27 John David Anglin - - PR 26356 - * testsuite/binutils-all/objcopy.exp (objcopy --reverse-bytes): Add - "-j $PRIVATE$" to command on hppa*-*-hpux*. - * testsuite/lib/utils-lib.exp (default_binutils_run): Remove existing - dollar-sign quotes before quoting. Do this prior to generating log - output. - -2020-08-27 Ralf Habacker - - PR 26088 - * mclex.c (skip_until_eol): If eol was found, increment line - number. - -2020-08-27 Nick Alcock - - * objdump.c (dump_ctf_errs): Unquote CTF error messages. - * readelf.c (dump_ctf_errs): Likewise. - -2020-08-27 Nick Alcock - - * objdump.c (dump_ctf_archive_member): Move error- - reporting... - (dump_ctf_errs): ... into this separate function. - (dump_ctf): Call it on open errors. - * readelf.c (dump_ctf_archive_member): Move error- - reporting... - (dump_ctf_errs): ... into this separate function. Support - calls with NULL fp. Adjust for new err parameter to - ctf_errwarning_next. - (dump_section_as_ctf): Call it on open errors. - -2020-08-27 Nick Alcock - - * Makefile.am (readelf_LDADD): Move $(LIBINTL) after $(LIBCTF_NOBFD). - * Makefile.in: Regenerated. - -2020-08-26 Nick Clifton - - PR 26405 - * readelf.c (get_segment_type): Handle OpenBSD segment types. - -2020-08-26 Alan Modra - - PR 26412 - * objcopy.c (copy_object): Don't fwrite NULL contents. - -2020-08-26 Katayama Hirofumi - - PR 26340 - * rcparse.y (AUTOCHECKBOX): Add WS_TABSTOP to the base style. - -2020-08-24 Alan Modra - - * readelf.c (dump_section_as_strings) Avoid false positive - "may be used uninitialised". - -2020-08-22 H.J. Lu - - PR ld/26382 - * nm.c (print_symname): Display only one '@' for undefined - versioned symbols. - * doc/binutils.texi: Update nm version information. - -2020-08-21 Mark Wielaard - - * testsuite/binutils-all/readelf.exp (readelf_wi_test): Also - recognize DW_LANG_C11. - -2020-08-19 Alan Modra - - PR 26349 - * readelf.c (dump_relocations): Use BFD_VMA_FMT to print offset - and info fields. - (dump_section_as_strings): Don't use %tx to display offset. - -2020-08-14 Alan Modra - - PR 26388 - * dwarf.c (free_debug_memory): Free alloc_num_debug_info_entries - of debug_information. Correct test of max_loc_offsets and - max_range_lists. - * rddbg.c (read_debugging_info): Free dhandle on error. - -2020-08-14 Alan Modra - - * testsuite/binutils-all/mangled.s: Use dc.a rather than dc.d. - -2020-08-13 Alan Modra - - PR 26348 - * objcopy.c (copy_object): Report file name with endian error. - Error and return on abfd->read_only. - -2020-08-12 Tom Tromey - - * dwarf-mode.el (Version): Now 1.6. - (dwarf-die-button-action): Tighten DIE reference regexp. - (dwarf-font-lock-keywords): Update name regexp. - -2020-08-12 Nick Clifton - - PR binutils/26331 - * readelf.c (do_demangle): New option flag. - (print_symbol): If do_demangle is enabled, demangle the symbol. - (enum long_option_values): New enum to hold long option values. - (options): Add demangle, no-demangle, recursion-limit and - no-recursion-limit options. Alpha sort the table. - (usage): Describe the new options. - (parse_args): Handle the new options. - * NEWS: Mention the new feature. - * doc/binutils.texi: Document the new feature. - * testsuite/binutils-all/readelf.exp: Test the new feature. - * testsuite/binutils-all/mangled.s: New file - assembler source. - * testsuite/binutils-all/readelf.demangled: New file - expected - output from readelf. - -2020-08-12 Nick Clifton - - * po/sr.po: Updated Serbian translation. - -2020-08-10 H.J. Lu - - PR binutils/26302 - * nm.c (with_symbol_versions): Removed. - (long_option_values): Add OPTION_WITH_SYMBOL_VERSIONS. - (long_options): Update --with-symbol-versions entry. - (print_symbol): Remove the with_symbol_versions check. - (main): Add OPTION_WITH_SYMBOL_VERSIONS for backward - compatibility. - * doc/binutils.texi: Remove --with-symbol-versions. - -2020-08-05 Alan Modra - - PR 26337 - * objdump.c (load_specific_debug_section): Revert last change. - -2020-08-05 Alan Modra - - PR 26337 - * objdump.c (load_specific_debug_section): Don't malloc space for - section contents, use bfd_malloc_and_get_section. - -2020-07-30 Rainer Orth - - * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. - * Makefile.in, doc/Makefile.in: Regenerate. - * configure: Regenerate. - -2020-07-30 H.J. Lu - - * testsuite/binutils-all/i386/compressed-1a.d: Pass --gdwarf-3 - to assembler. - * testsuite/binutils-all/i386/compressed-1b.d: Likewise. - * testsuite/binutils-all/i386/compressed-1c.d: Likewise. - * testsuite/binutils-all/x86-64/compressed-1a.d: Likewise. - * testsuite/binutils-all/x86-64/compressed-1b.d: Likewise. - * testsuite/binutils-all/x86-64/compressed-1c.d: Likewise. - -2020-07-29 Maciej W. Rozycki - - * testsuite/binutils-all/mips/global-local-symtab-sort-o32.d: - New test. - * testsuite/binutils-all/mips/global-local-symtab-sort-o32t.d: - New test. - * testsuite/binutils-all/mips/global-local-symtab-sort-n32.d: - New test. - * testsuite/binutils-all/mips/global-local-symtab-sort-n32t.d: - New test. - * testsuite/binutils-all/mips/global-local-symtab-sort-n64.d: - New test. - * testsuite/binutils-all/mips/global-local-symtab-sort-n64t.d: - New test. - * testsuite/binutils-all/mips/global-local-symtab-final-o32.d: - New test. - * testsuite/binutils-all/mips/global-local-symtab-final-n32.d: - New test. - * testsuite/binutils-all/mips/global-local-symtab-final-n64.d: - New test. - * testsuite/binutils-all/mips/mips.exp: Run the new tests. - -2020-07-29 Maciej W. Rozycki - - * testsuite/binutils-all/mips/global-local-symtab-o32.d: New - test. - * testsuite/binutils-all/mips/global-local-symtab-o32t.d: New - test. - * testsuite/binutils-all/mips/global-local-symtab-n32.d: New - test. - * testsuite/binutils-all/mips/global-local-symtab-n32t.d: New - test. - * testsuite/binutils-all/mips/global-local-symtab-n64.d: New - test. - * testsuite/binutils-all/mips/mips.exp: Run the new tests. - -2020-07-28 H.J. Lu - - PR binutils/26301 - * configure: Regenerated. - -2020-07-28 H.J. Lu - - PR binutils/26301 - * configure: Regenerated. - -2020-07-27 Alan Modra - - * objdump.c (dump_section): Don't return without calling - process_section_p. - -2020-07-27 H.J. Lu - - * doc/binutils.texi: Replace preceeded with preceded. - -2020-07-26 Maciej W. Rozycki - - * testsuite/binutils-all/mips/mips.exp (run_dump_test_abi) - (run_dump_test_o32, run_dump_test_n32, run_dump_test_n64): New - procedures. - (has_newabi): Remove variable. - (has_abi, abi_asflags, abi_ldflags): New associative array - variables. - (irixemul): New variable. - Replace `run_dump_test' calls where applicable throughout with - `run_dump_test_o32', `run_dump_test_n32' and `run_dump_test_n64' - as appropriate. Use `noarch' for tests that require their own - architecture setting. - * testsuite/binutils-all/mips/mips-ase-1.d: Remove GAS flags. - * testsuite/binutils-all/mips/mips-ase-2.d: Likewise. - * testsuite/binutils-all/mips/mips-ase-3.d: Likewise. - * testsuite/binutils-all/mips/mips-note-2-n32.d: Likewise. - * testsuite/binutils-all/mips/mips-note-2-n64.d: Likewise. - * testsuite/binutils-all/mips/mips-note-2.d: Likewise. - * testsuite/binutils-all/mips/mips-note-2r-n32.d: Likewise. - * testsuite/binutils-all/mips/mips-note-2r-n64.d: Likewise. - * testsuite/binutils-all/mips/mips-note-2r.d: Likewise. - * testsuite/binutils-all/mips/mips-reginfo-n32.d: Likewise. - * testsuite/binutils-all/mips/mips-reginfo.d: Likewise. - * testsuite/binutils-all/mips/mips16-extend-noinsn.d: Likewise. - * testsuite/binutils-all/mips/mips16-pcrel.d: Likewise. - * testsuite/binutils-all/mips/mips16-alias.d: Remove `-32' from - GAS flags. - * testsuite/binutils-all/mips/mips16-extend-insn.d: Likewise. - * testsuite/binutils-all/mips/mips16-noalias.d: Likewise. - * testsuite/binutils-all/mips/mips16-undecoded.d: Likewise. - * testsuite/binutils-all/mips/mips16e2-extend-insn.d: Likewise. - * testsuite/binutils-all/mips/mips16e2-undecoded.d: Likewise. - * testsuite/binutils-all/mips/mixed-micromips.d: Likewise. - * testsuite/binutils-all/mips/mixed-mips16.d: Likewise. - -2020-07-24 Aaron Merey - - * Makefile.am: Replace LIBDEBUGINFOD with DEBUGINFOD_LIBS. - * Makefile.in: Rebuild. - * configure: Rebuild. - * doc/Makefile.in: Rebuild. - -2020-07-24 Nick Clifton - - * README-how-to-make-a-release: Various small updates whilst - creating the 2.35 release. - -2020-07-22 Nick Alcock - - * testsuite/lib/binutils-common.exp (run_dump_test): Add 'cc' - option. - -2020-07-22 Nick Alcock - - * objdump.c (dump_ctf_archive_member): Remove linefeeds. - (dump_ctf): Likewise. - -2020-07-22 Nick Alcock - - * objdump.c (ctf_archive_member): Print CTF errors and warnings. - * readelf.c (dump_ctf_archive_member): Likewise. - -2020-07-22 Nick Clifton - - * readelf.c (parse_args): Silence potential warnings about a - memory resource leak when allocating space for ctf option values. - (dump_section_as_ctf): Fix typo checking dump_ctf_strtab_name - variable. - -2020-07-21 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2020-07-14 Claudiu Zissulescu - - * testsuite/binutils-all/arc/double_regs.s: New test. - * testsuite/binutils-all/arc/objdump.exp: Add the above test. - -2020-07-13 Nick Clifton - - * po/fr.po: Updated French translation. - -2020-07-13 Alan Modra - - * testsuite/lib/binutils-common.exp (is_pecoff_format): Accept - optional machine-os arg. - -2020-07-11 H.J. Lu - - * readelf.c (decode_x86_feature_2): Handle - GNU_PROPERTY_X86_FEATURE_2_TMM. - -2020-07-10 Tom de Vries - - * dwarf.c (display_debug_lines_decoded): Don't emit meaningless - information in the end_sequence row. - * testsuite/binutils-all/dw5.W: Update. - * testsuite/binutils-all/objdump.WL: Update. - -2020-07-09 Alan Modra - - * dlltool.c: Remove powerpc PE support and comments. - * configure.ac: Remove powerpc PE dlltool config. - * configure: Regenerate. - -2020-07-09 Nick Clifton - - * rclex.c: Add OWNERDRAW keyword. - * rcparse.y: Add OWNERDRAW token. - (menuitem_flag) Add BITMAP and OWNERDRAW entries. - * resrc.c (write_rc_menuitems): Add support for OWNERDRAW and - BITMAP flags. - * windres.c (extended_menuitems): Likewise. - * testsuite/binutils-all/windres/menuitem_flags.rc: New test. - -2020-07-09 Alan Modra - - * readelf (slurp_hppa_unwind_table): Set table_len before use - in relocation sanity checks. - -2020-07-07 Alan Modra - - * testsuite/binutils-all/ar.exp: Use is_xcoff_format. - * testsuite/binutils-all/nm.exp: Likewise. - * testsuite/binutils-all/copy-2.d: Run only for elf and pe targets. - * testsuite/binutils-all/copy-3.d: Run only for elf targets. - * testsuite/binutils-all/set-section-alignment.d: Likewise. - * testsuite/binutils-all/copy-4.d: Don't run for xcoff. - -2020-07-07 Alan Modra - - * testsuite/lib/binutils-common.exp (is_xcoff_format): New. - * testsuite/binutils-all/objcopy.exp (pr25662): Exclude xcoff. - -2020-07-06 Nick Clifton - - * po/bg.po: Updated Bulgarian translation. - * po/pt.po: Updated Portuguese translation. - * po/uk.po: Updated Ukranian translation. - -2020-07-06 Alan Modra - - * readelf.c (print_dynamic_symbol): Don't sprintf to buffer to - find string length. - -2020-07-04 Nick Clifton - - * configure: Regenerate. - * po/binutils.pot: Regenerate. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-07-02 Nick Clifton - - PR 26028 - * readelf.c (print_symbol): Handle truncation of symbol names. - (options): Add -T/--silent-truncation option. - (parse_args): Handle the option. - (print_dynamic_symbol): Correct calculation of width available to - display symbol name. - * doc/binutils.texi: Document the -T option to readelf. - * NEWS: Mention the new feature. - -2020-06-30 H.J. Lu - - * NEWS: Mention x86 NaCl target support removal. - * dwarf.c (init_dwarf_regnames_by_bfd_arch_and_mach): Remove - x86 NaCl target support. - * testsuite/binutils-all/elfedit-1.d: Likewise. - * testsuite/binutils-all/i386/i386.exp: Likewise. - * testsuite/binutils-all/x86-64/objects.exp: Likewise. - * testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494a.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494b-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494b.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494c.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494d.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise. - * testsuite/binutils-all/x86-64/pr23494e.d: Likewise. - * testsuite/binutils-all/x86-64/x86-64.exp: Likewise. - -2020-06-30 Nick Clifton - - * dwarf.c (read_and_display_attr_value): Support - DW_FORM_GNU_strp_alt when used with DW_AT_dwo_name and - DW_AT_comp_dir. - -2020-06-30 Alan Modra - - * testsuite/binutils-all/readelf.exp (readelf_dump_test): Remove - xfail for nds32. - -2020-06-29 Hans-Peter Nilsson - - * dwarf.c (display_debug_str_offsets): Rename local variable - index to idx. Move to top of function. - -2020-06-29 Alan Modra - - * dwarf.c: Use C style comments. - * resrc.c: Likewise. - -2020-06-27 Alan Modra - - * elfcomm.c (setup_nested_archive): Set nested_arch->file to NULL - after freeing. - (release_archive): Set fields of arch to NULL after freeing. - -2020-06-26 Nick Alcock - - * readelf.c (dump_section_as_ctf): Support .ctf archives using - ctf_arc_bufopen. Automatically load the .ctf member of such - archives as the parent of all other members, unless specifically - overridden via --ctf-parent. Split out dumping code into... - (dump_ctf_archive_member): ... here, as in objdump, and call - it once per archive member. - (dump_ctf_indent_lines): Code style fix. - -2020-06-26 Nick Alcock - - * configure.ac [--enable-libctf]: New, default yes. - Set ENABLE_LIBCTF accordingly. - * Makefile.am [!ENABLE_LIBCTF]: Empty LIBCTF and LIBCTF_NOBFD. - * configure: Regenerate. - * config.in: Regenerate. - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * objdump.c (usage): Conditionalize portions on ENABLE_LIBCTF. - (option_values): Likewise. - (long_options): Likewise. - (main): Likewise. - (dump_ctf_indent_lines): Conditionalize out when !ENABLE_LIBCTF. - (make_ctfsect): Likewise. - (dump_ctf_archive_member): Likewise. - (dump_ctf) [ENABLE_LIBCTF]: Likewise. - (dump_ctf) [!ENABLE_LIBCTF]: New empty stub. - * readelf.c (options): Conditionalize portions on ENABLE_LIBCTF. - (usage): Likewise. - (process_section_contents): Likewise. - (shdr_to_ctf_sect): Conditionalize out when !ENABLE_LIBCTF. - (dump_ctf_indent_lines): Likewise. - (dump_section_as_ctf) [ENABLE_LIBCTF]: Likewise. - -2020-06-26 Jan Beulich - - * doc/binutils.texi: Adjust description of x86's -Msuffix. Drop - redundant text from x86 specific part of -M section. - -2020-06-26 Pat Bernardi - - * readelf.c (display_m68k_gnu_attribute): New function. - (process_arch_specific): Call display_m68k_gnu_attribute for EM_68K. - -2020-06-23 H.J. Lu - - PR binutils/26160 - * testsuite/binutils-all/pr26160.dwp.bz2: New file. - * testsuite/binutils-all/pr26160.r: Likewise. - * testsuite/binutils-all/readelf.exp: Run PR binutils/26160 test. - -2020-06-23 Nick Clifton - - PR 26160 - * dwarf.c (fetch_indexed_string): Detect and handle old style - .debug_str_offset tables. - (display_debug_str_offsets): Likewise. Also add support for - .debug_str_offsets.dwo sections. - -2020-06-23 H.J. Lu - - PR binutils/26112 - * testsuite/binutils-all/pr26112.o.bz2: New file. - * testsuite/binutils-all/pr26112.r: Likewise. - * testsuite/binutils-all/readelf.exp: Run PR binutils/26112 test. - -2020-06-23 Alan Modra - - * testsuite/binutils-all/objdump.exp (bintest.a): Correct - remote_file delete command. - -2020-06-22 Nick Clifton - - PR 26112 - * dwarf.c (display_debug_str_offsets): Add code to display the - contents of the .debug_str_offsets section. - (display_debug_macro): Add support for DW_MACRO_define_strx and - DW_MACRO_undef_strx. - -2020-06-22 Saagar Jha - - * od-macho.c: Dump linkedit data for new load commands. - -2020-06-19 Alan Modra - - * testsuite/config/default.exp (ld_elf_shared_opt): Don't set. - * testsuite/lib/binutils-common.exp (check_relro_support): New proc. - (run_dump_test): Use check_relro_support to decide whether to pass - extra ld option "-z norelro". - -2020-06-11 Alan Modra - - * readelf.c (process_mips_specific): Don't alloc memory for - Elf_Internal_Options. - -2020-06-11 Alan Modra - - * readelf.c (process_mips_specific): Assert size of internal - types match size of external types, and simplify allocation of - internal buffer. Catch possible integer overflow when sanity - checking option size. Don't assume options are a regular array. - Sanity check reginfo option against option size. Use PRI macros - when printing. - -2020-06-10 Ralf Habacker - - PR 26082 - * mclex.c (yylex): Reject lines that reach end-of-file without a - terminating newline character. - -2020-06-08 Nick Clifton - - PR 26093 - * doc/binutils.texi (strings): Fix typo. - -2020-06-08 Nick Clifton - - PR 26086 - * dwarf.c (process_debug_info): Check that there is space in the - debug_information array before filling in an entry. - -2020-06-06 Alan Modra - - * doc/binutils.texi (PowerPC -M option): Mention power10 and pwr10. - -2020-06-05 Joel Anderson - - PR 26082 - * mclex.c (yylex): Add test for an empty input stream. - -2020-06-04 Stephen Casner - - * testsuite/binutils-all/pr25662-pdp11.s: Alternate source file - for test using section pseudo-ops compatible with pdp11. - * testsuite/binutils-all/objcopy.exp: Select alternate source. - -2020-06-04 Jose E. Marchesi - - * objdump.c (disassemble_data): Set disasm_info.endian_code to - disasm_info.endian after the latter is initialized to the - endianness reported by BFD. - -2020-06-04 Alan Modra - - * testsuite/binutils-all/i386/i386.exp: Remove global directive - outside proc body. - * testsuite/binutils-all/x86-64/objects.exp: Likewise. - * testsuite/binutils-all/x86-64/x86-64.exp: Likewise. - -2020-06-03 Joel Anderson - - * windmc.h (struct mc_node): Add id_typecast field. - * mcparse.y (message): Initialise the id_typecast field. - * windmc.c (write_dbg): Use the id_typecast field as a parameter - when calling write_dbg_define. - (write_header): Likewise. - -2020-06-03 Alan Modra - - PR 26069 - * objcopy.c (copy_relocations_in_section): Free relpp on error. - Don't accidentally free isection->orelocation. - -2020-06-02 Alan Modra - - * testsuite/binutils-all/ar.exp (obj): Set up object file name - extension. Use throughout. Don't completely exclude non-ELF - alpha targets. Run long_filenames test for tic30. Exclude thin - archive tests for aix, ecoff and vms. - * estsuite/binutils-all/objdump.exp (obj): Set up object file name - extension. Use throughout. Don't exclude non-ELF alpha targets - from "bintest.a". - -2020-05-28 Max Filippov - - * MAINTAINERS (Xtensa): Add myself as maintainer. - -2020-05-23 Alan Modra - - * testsuite/binutils-all/ar.exp (many_files): New test. - -2020-05-21 Alan Modra - - * addr2line.c: Replace "if (x) free (x)" with "free (x)" throughout. - * dlltool.c: Likewise. - * elfcomm.c: Likewise. - * rddbg.c: Likewise. - * readelf.c: Likewise. - * stabs.c: Likewise. - * windmc.c: Likewise. - * windres.c: Likewise. - * wrstabs.c: Likewise. - -2020-05-21 Alan Modra - - * readelf.c (get_num_dynamic_syms): Bounds check mipsxlat array - access. - -2020-05-20 Nelson Chu - - * dwarf.c: Updated since DECLARE_CSR is changed. - -2020-05-19 H.J. Lu - - PR binutils/25809 - * readelf.c (process_program_headers): Warn if the PT_DYNAMIC - segment doesn't match the .dynamic section and checks are - enabled. - (struct filedata): Add dynamic_symtab_section and - dynamic_strtab_section fields. - (process_section_headers): Set dynamic_symtab_section to the - .dynsym section. Set dynamic_strtab_section to the .dynstr - section. - (process_dynamic_section): Warn if the .dynsym section doesn't - match DT_SYMTAB and DT_SYMENT or the .dynstr section doesn't - DT_STRTAB and DT_STRSZ. But only if checks are enabled. - -2020-05-19 Alan Modra - - * ar.c (map_over_members, get_pos_bfd, delete_members, move_members), - (replace_members): Use bfd_get_filename rather than accessing - bfd->filename directly. - * arsup.c (map_over_list, ar_delete, ar_replace, ar_extract): Likewise. - * binemul.c (do_ar_emul_append): Likewise. - * coffgrok.c (coff_grok): Likewise. - -2020-05-18 Stafford Horne - - * MAINTAINERS (OR1K): Add myself as maintainer. - -2020-05-07 Andrew Burgess - - * doc/binutils.texi: Mention 'entry address' in the set-start and - adjust-start options descriptions. - -2020-05-05 Nick Clifton - - * dwarf.c (do_checks): New global variable. - (display_formatted_table): Warn about an unexpected number of - columns in the table, if checks are enabled. Do not complain - about the lack of data following the number of entries in the - table if the table is empty. - (display_debug_lines_decoded): Only warn about an unexpected - number of columns in a table if checks are enabled. - * dwarf.h (do_checks): Add a prototype. - * elfcomm.c (error): Remove weak attribute. - (warn): Likewise. - * readelf.c (do_checks): Delete. - (warn): Delete. - (process_section_headers): Only warn about empty sections if - checks are enabled. - -2020-05-04 Fangrui Song - - * objcopy.c (copy_object): Allow empty section. - * testsuite/binutils-all/update-section.exp: Add test. - -2020-05-04 Nick Clifton - - PR 25917 - * dwarf.c (display_debug_lines_decoded): Warn if encountering a - supicious number of entries for DWARF-5 format directory and file - name tables. Do not display file name table header if the table - is empty. Do not allocate space for empty tables. - -2020-05-04 Alan Modra - - * readelf.c (process_nds32_specific): Check size of .nds32_e_flags - section. Don't assume endian of host matches nds32 target. Free - buffer. - -2020-05-01 Alan Modra - Haim Shimonovich - - * objdump.c (disassemble_bytes): Don't scan for zeros when - disassembling zeros. Translate "resuming at file offset" message. - Formatting. Replace some signed variables with unsigned. - -2020-04-30 Alex Coplan - - * testsuite/binutils-all/aarch64/in-order-all.d: Update to use new - disassembly. - * testsuite/binutils-all/aarch64/out-of-order-all.d: Likewise. - -2020-04-30 Nick Clifton - - * testsuite/lib/binutils-common.exp (check_pie_support): New - proc. - -2020-04-29 Andrew Burgess - - * dwarf.c (display_debug_ranges): Ignore duplicate entries in - range_entries for the same offset. - -2020-04-29 Nick Clifton - - * readelf.c (warn): New function - like elfcomm.c version but only - produces output if warnings are enabled. - (struct options): Add --lint and --enable-checks. - (usage): Add entry for --lint. - (parse_args): Handle -L. If checks are enabled but no dumps have - been selected then enable all dumps. - (process_section_headers): Replace long if-then-else sequence with - a switch. Add warning messages for empty SHT_REL, SHT_RELA and - SHT_PROGBITS sections. - (process_file): Do not complain if the file is an archive and lint - mode has been enabled. - * elfcomm.c (error): Make the function weak. - (warn): Likewise. - * NEWS: Mention the new feature. - * doc/binutils.texi: Document the new feature. - * dwarf.h (report_leb_status): Add file name and line number - parameters. Include them in the diagnostic output. - (READ_ULEB): Pass file and line number to report_leb_status. - (READ_SLEB): Likewise. - * dwarf.c (read_and_print_leb128): Pass file and line number to - report_leb_status. - * testsuite/binutils-all/readelf.exp: Add test of new feature. - * testsuite/binutils-all/zero-sec.s: New test source file. - * testsuite/binutils-all/zero-sec.r: Expected output from new - test. - -2020-04-29 Nick Clifton - - * po/sr.po: Updated Serbian translation. - -2020-04-26 Alan Modra - - * readelf.c (get_num_dynamic_syms): Check DT_MIPS_XHASH was - read before dereferencing, and gracefully return. Remove - gnu_hash_error variable. Free gnu hash arrays if number of - syms found is zero. - -2020-04-24 Alan Modra - - * readelf.c (get_num_dynamic_syms): Check for nbuckets and nchains - non-zero. - (process_dynamic_section): Call get_num_dynamic_syms once rather - than in segment loop. Break out of segment loop on a successful - load of dynamic symbols. Formatting. - (process_object): Return error status from process_dynamic_section. - -2020-04-23 Anton Kolesov - - * elf-bfd.h (elfcore_write_arc_v2): Add prototype. - * elf.c (elfcore_grok_arc_v2): New function. - (elfcore_grok_note): Call the new function to handle the corresponding - note. - (elfcore_write_arc_v2): New function. - (elfcore_write_register_note): Call the new function to handle the - corresponding pseudo-sections. - -2020-04-22 Max Filippov - - PR ld/25861 - * readelf.c (is_none_reloc): Recognize - BFD_RELOC_XTENSA_PDIFF{8,16,32} and - BFD_RELOC_XTENSA_NDIFF{8,16,32}. - -2020-04-22 Nick Clifton - - * MAINTAINERS: Remove Chris Faylor as the ix86 PE maintainer. - -2020-04-22 Alan Modra - - * readelf.c (archive_file_offset, archive_file_size, dynamic_addr), - (dynamic_size, dynamic_nent, dynamic_strings, dynamic_strings_length), - (num_dynamic_syms, nbuckets, nchains, buckets, chains), - (ngnubuckets, gnubuckets, gnuchains, mipsxlat, ngnuchains), - (gnusymidx, dynamic_symbols, dynamic_syminfo, dynamic_syminfo_offset), - (dynamic_syminfo_nent, program_interpreter, dynamic_info), - (dynamic_info_DT_GNU_HASH, dynamic_info_DT_MIPS_XHASH, version_info), - (dynamic_section, symtab_shndx_list, group_count, section_groups), - (section_headers_groups): Move to struct filedata. Update use - throughout file. - -2020-04-22 Alan Modra - - * readelf.c (struct dump_data): New, used.. - (cmdline): ..here, and.. - (struct filedata): ..here. Adjust all uses. - (request_dump_bynumber, request_dump, parse_args): Pass in a - struct dump_data* rather than Filedata*. Adjust callers. - (main): Don't set cmdline.file_name. - -2020-04-20 Alan Modra - - * readelf.c (process_symbol_table): Clear ngnuchains, ngnubuckets - and nbuckets. - -2020-04-20 Alan Modra - - * readelf.c (process_section_headers): Free dynamic symbols etc. - earlier. - -2020-04-20 Alan Modra - - * readelf.c (get_num_dynamic_syms): Formatting. Don't return - on error without freeing. - (process_dynamic_section): Don't recreate dynamic symbols from - dynamic tag info when the dynamic symbols have already been - read via section headers. - -2020-04-17 Fredrik Strupe - - * testsuite/binutils-all/arm/vdup-cond.d: New test for testing that - conditional VDUP instructions are disassembled correctly. - * testsuite/binutils-all/arm/vdup-cond.s: New file used by - vdup-cond.d. - * testsuite/binutils-all/arm/vdup-thumb.d: New test for testing - that VDUP instructions (which are conditional in A32) can be - disassembled in thumb mode. - * testsuite/binutils-all/arm/vdup-cond.s: New file used by - vdup-thumb.d. - -2020-04-17 Alan Modra - - PR 25840 - * debug.c (debug_class_type_samep): Don't segfault on NULL type. - -2020-04-16 Alan Modra - - * doc/binutils.texi: Mention --no-show-raw-insn in objdump - --no-addresses description. - -2020-04-15 Alan Modra - - * objdump.c (no_addresses): New static var. - (usage): Print help for --no-addresses. - (long_options): Add --no-addresses entry. - (objdump_print_addr_with_sym, objdump_print_addr): Omit symbol address. - (disassemble_bytes): Don't print current line address, or reloc - address. - * doc/binutils.texi: Document objdump --no-addresses. - -2020-04-15 Alan Modra - - PR 25822 - * readelf.c (get_num_dynamic_syms): Don't set num_of_syms when - reading buckets or chains fails. - -2020-04-15 Alan Modra - - * readelf.c (process_symbol_table): Zero gnubuckets, gnuchains - etc. after freeing. - -2020-04-15 Alan Modra - - * readelf.c (get_group_flags): Translate text. - (get_file_type, get_symbol_binding, get_symbol_type), - (get_ppc64_symbol_other, get_symbol_other): Increase size of buffer. - -2020-04-15 Alan Modra - - PR 25821 - * readelf.c (get_num_dynamic_syms): Typo fix. - -2020-04-14 Alan Modra - - * readelf.c (process_mips_specific): Free eopt and iopt. Avoid - possibility of overflow when checking number of conflicts. - -2020-04-14 H.J. Lu - - PR binutils/25707 - * readelf.c (nbuckets): New. - (nchains): Likewise. - (buckets): Likewise. - (chains): Likewise. - (ngnubuckets): Likewise. - (gnubuckets): Likewise. - (gnuchains): Likewise. - (mipsxlat): Likewise. - (ngnuchains): Likewise. - (gnusymidx): Likewise. - (VALID_SYMBOL_NAME): Likewise. - (VALID_DYNAMIC_NAME): Use it. - (get_dynamic_data): Moved before process_dynamic_section. - (get_num_dynamic_syms): New function. - (process_dynamic_section): Use DT_SYMTAB, DT_SYMENT, DT_HASH, - DT_GNU_HASH and DT_MIPS_XHASH to reconstruct dynamic symbol - table. Use DT_STRTAB and DT_STRSZ to reconstruct dynamic string - table. - (get_symbol_index_type): Don't print "bad section index" when - there is no section header. - (print_dynamic_symbol): Rewrite. - (process_symbol_table): Call print_dynamic_symbol to dump dynamic - symbol table. - -2020-04-02 Rainer Orth - - * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Don't - enable on *-*-solaris*. - -2020-03-30 Nick Clifton - - PR binutils/25662 - * objcopy.c (copy_object): When copying PE format files set the - timestamp field in the pe_data structure if the preserve_dates - flag is set. - * testsuite/binutils-all/objcopy.exp (objcopy_test) Use - --preserve-dates in place of the -p option, in order to make its - effect more obvious. - -2020-03-28 Alan Modra - - * testsuite/binutils-all/objcopy.exp (objcopy_test): Only - clear_xfail hppa*-*-*elf*. Revert mips xfails. - -2020-03-28 Alan Modra - - * testsuite/binutils-all/objcopy.exp (objcopy_test): Move xfails - from here to calls. Remove "m8*-*-*" entry. Don't xfail tic54x - but do xfail spu, mipstx39 and mips-sgi-irix for the executable - test. Pass "-p" to objcopy for the executable test. - -2020-03-27 Jozef Lawrynowicz - - PR binutils/25662 - * testsuite/binutils-all/objcopy.exp (objcopy_test): Add argument to - specify whether an object file or executable should be built and tested. - Change test names to report whether an object file or executable is - being tested. - * testsuite/binutils-all/pr25662.ld: New test. - * testsuite/binutils-all/pr25662.s: New test. - -2020-03-27 Alan Modra - - * readelf.c (process_archive): Don't double free qualified_name. - Don't break out of loop with "negative" archive_file_size, just - set file offset to max. - -2020-03-25 Alan Modra - - * readelf.c (process_archive): Prevent endless loop. - -2020-03-24 H.J. Lu - - PR binutils/25708 - * nm.c (print_symname): Replace _bfd_elf_get_symbol_version_name - with bfd_get_symbol_version_string. - (print_symbo): Pass TRUE to bfd_get_symbol_version_string. - * objdump.c (objdump_print_symname): Likewise. - -2020-03-24 H.J. Lu - - PR binutils/25708 - * nm.c (SYM_NAME): Removed. - (print_symname): Add a pointer to struct extended_symbol_info - argument. Call _bfd_elf_get_symbol_version_name to get symbol - version. - (print_symdef_entry): Pass NULL to print_symname. - (print_symbol_info_bsd): Update call to print_symname. - (print_symbol_info_sysv): Likewise. - (print_symbol_info_posix): Likewise. - -2020-03-24 Alan Modra - - * readelf.c (process_mips_specific): Free iconf on error path. - -2020-03-23 Nick Clifton - - PR 25714 - * wrstabs.c (stab_pop_type): Replace assertion with error return. - * write_stabs_in_sections_debugging_info: Likewise. - * stab_enum_type: Likewise. - * stab_modify_type: Likewise. - * stab_struct_field: Likewise. - * stab_end_struct_type: Likewise. - * stab_start_class_type: Likewise. - * stab_class_static_member: Likewise. - * stab_class_baseclass: Likewise. - * stab_class_start_method: Likewise. - * stab_class_method_var: Likewise. - * stab_class_end_method: Likewise. - * stab_end_class_type: Likewise. - * stab_typedef_type: Likewise. - * stab_start_function: Likewise. - * stab_end_block: Likewise. - * stab_lineno: Likewise. - -2020-03-20 Nick Clifton - - * readelf.c (get_compression_header): Add ATTRIBUTE_WARN_UNUSED_RESULT. - (process_section_headers): Check the return value from - get_compression_header. - (dump_section_as_strings): Likewise. - (dump_section_as_bytes): Likewise. - (load_specific_debug_section): Likewise. - -2020-03-20 H.J. Lu - - * ar.c (main): Update bfd_plugin_set_program_name call. - * nm.c (main): Likewise. - -2020-03-19 Nick Clifton - - PR 25676 - * testsuite/binutils-all/dw4.s: New test source file. - * testsuite/binutils-all/nm.exp: Run the new test. - -2020-03-19 H.J. Lu - - * readelf.c (process_symbol_table): Use unsigned long for si. - -2020-03-19 Alan Modra - - * elfcomm.c: Don't include bfd.h or bucomm.h. - (program_name): Declare. - (process_archive_index_and_symbols): Replace bfd_boolean with int, - and substitute FALSE and TRUE. - (setup_archive, setup_nested_archive): Likewise. - * elfcomm.h: Likewise. - -2020-03-19 Alan Modra - - * readelf.c (process_archive): Always return via path freeing - memory. Formatting. - -2020-03-19 Alan Modra - - * readelf.c (process_netbsd_elf_note): Validate descsz before - accessing descdata. Formatting. - -2020-03-19 Alan Modra - - * elfcomm.c (setup_archive): Make file_size an off_t. Comment. - * elfcomm.h (setup_archive): Update prototype. - -2020-03-16 Alan Modra - - * readelf.c (get_symbols): New function. - (process_relocs, ia64_process_unwind, hppa_process_unwind), - (arm_process_unwind, get_symbol_for_build_attribute): Use it. - -2020-03-16 Alan Modra - - * unwind-ia64.c (unw_decode_uleb128): Prevent overlarge shifts. - Detect shift overflows and check that terminating byte is found. - Print an error on a bad uleb128. - -2020-03-14 Alan Modra - - * readelf.c (process_file): Clean ba_cache. - -2020-03-14 Alan Modra - - * elfcomm.h (setup_archive): Update prototype. - * elfcomm.c (setup_archive): Add file_size parameter and sanity - check longnames_size. - (setup_nested_archive): Get file size and pass to setup_archive. - * elfedit.c (process_archive): Likewise. - * readelf.c (process_archive): Pass filedata->file_size to - setup_archive. - -2020-03-14 Alan Modra - - * readelf.c (dump_section_as_strings): Free memory on error exit. - (dump_section_as_bytes, process_notes_at): Likewise. - (get_build_id): Free enote. - -2020-03-13 Kamil Rytarowski - - * readelf.c (get_netbsd_elfcore_note_type): Add support for - NT_NETBSDCORE_LWPSTATUS notes. - -2020-03-13 Alan Modra - - * elfcomm.c (get_archive_member_name): Always return malloc'd - string or NULL. - * elfedit.c (process_archive): Tidy memory on all return paths. - * readelf.c (process_archive): Likewise. - (process_symbol_table): Likewise. - (ba_cache): New, replacing .. - (get_symbol_for_build_attribute): ..static vars here. Free - strtab and symtab before loading new ones. Reject symtab without - valid strtab in loop, breaking out of loop on valid symtab. - (process_file): Free ba_cache symtab and strtab here, resetting - ba_cache. - -2020-03-12 Alan Modra - - * readelf.c (process_section_headers): Don't just set - filedata->section_headers NULL, free it first. Similarly for - dynamic_symbols, dynamic_strings, dynamic_syminfo and - symtab_shndx_list. Zero associated counts too. - (process_object): Free symtab_shndx_list. - (process_file): Free various allocated filedata tables. - -2020-03-11 Nick Clifton - - PR 25611 - PR 25614 - * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and - li_segment_size fields. - * dwarf.c (read_debug_line_header): Record the address size and - segment selector size values (if present) in the lineinfo - structure. - (display_formatted_table): Warn if the format count is empty but - the table itself is not empty. - Display the format count and entry count at the start of the table - dump. - (display_debug_lines_raw): Display the address size and segement - selector size fields, if present. - * testsuite/binutils-all/dw5.W: Update expected output. - -2020-03-11 Alan Modra - - PR 25651 - * objcopy.c (copy_object): Test "gaps" not gap_fill_set or - pad_to_set on second block of code dealing with padding. - Replace "c" with "num_sec" and don't recalculate number of - sections on second block. Size arrays using sizeof (element) - rather than sizeof (element type). - -2020-03-10 Alan Modra - - * objdump.c (disassemble_section): Don't call qsort unless - sym count is at least two. - (disassemble_data): Don't call memcpy with NULL src. - -2020-03-09 Alan Modra - - PR 25645 - * readelf.c (dump_ia64_vms_dynamic_fixups): Pass size and nmemb - to get_data rather than multiplying. - (dump_ia64_vms_dynamic_relocs): Likewise. - (process_version_sections): Correct order of size and nmemb args - in get_data call. - (process_mips_specific): Likewise. - -2020-03-08 H.J. Lu - - * readelf.c (get_dynamic_data): Replace "memory chekers" with - "memory checkers" in comments. - -2020-03-06 Simon Marchi - - PR 25491 - * doc/Makefile.am: Rename MOSTLYCLEANFILES to MAINTAINERCLEANFILES. - * doc/Makefile.in: Re-generate. - -2020-03-06 Nick Clifton - - * objcopy.c (check_new_section_flags): New function. Reject the - SEC_COFF_SHARED flag if the target is not a COFF binary. - (copy_object): Call check_new_section_flags. - (setup_section): Likewise. - * doc/binutils.texi (objcopy): Add a note that the 'share' section - flag cannot be applied to ELF binaries. - -2020-03-06 Alan Modra - - PR 25637 - * objcopy.c (filter_symbols): Correct rem_leading_char logic. - -2020-03-05 Alan Modra - - PR 25629 - * objcopy.c (filter_symbols): Don't segfault on NULL - prefix_symbols_string. - -2020-03-04 Christian Eggers - - * objcopy.c (copy_object): Convert from bytes to octets for - --gap-fill and --pad-to. - -2020-03-03 Nick Clifton - - PR 25625 - * prdbg.c (pr_tag_type): Remove call to abort. - -2020-03-02 Aaron Merey - - * binutils/testsuite/binutils-all/debuginfod.exp: Improve port - selection. - -2020-03-02 Nick Clifton - - PR 25543 - * readelf.c (dump_section_as_strings): Display new-line characters - as \n and then insert a line break. - * testsuite/binutils-all/pr25543.s: New test. - * testsuite/binutils-all/pr25543.d: Test driver. - * testsuite/binutils-all/readelf.exp: Run the new test. - -2020-02-27 Nick Clifton - - PR 25526 - * readelf.c (process_ia64_vms_dynamic_relocs): Check to see if - get_data is unable to load the string table. - -2020-02-26 Alan Modra - - * elfedit.c: Indent labels correctly. - * readelf.c: Likewise. - * resres.c: Likewise. - -2020-02-25 H.J. Lu - - PR binutils/25584 - * ar.c (main): Pass 0 to bfd_plugin_set_program_name. - * nm.c (main): Pass 1 to bfd_plugin_set_program_name. - -2020-02-24 Nick Clifton - - PR 25499 - * doc/binutils.texi (objdump): Fix typo in description of - objdump's -g option. - -2020-02-20 Nelson Chu - - * dwarf.c (regname_internal_riscv): Updated since the DECLARE_CSR - is changed. - -2020-02-19 Jordan Rupprecht - - * objdump.c (show_line): call bfd_demangle when using do_demangle. - -2020-02-19 Andrew Burgess - - * configure: Regenerate. - -2020-02-10 Fangrui Song - - * objcopy.c (parse_flags): Handle "exclude". - * doc/binutils.texi: Document the support. - -2020-02-10 Aaron Merey - - * binutils/testsuite/binutils-all/debuginfod.exp: - Replace set ::env with setenv. - Start server before setting environment variable. - Specify tmpdir as the location of the server's - database. - Check additional server metrics at start-up. - -2020-02-07 Nick Clifton - - * README-how-to-make-a-release: Add note about updating the - GAS/NEWS URL in the next release. - -2020-02-07 Sergey Belyashov - - PR 25469 - * readelf.c (get_machine_flags): Add support for Z80N machine - number. - -2020-02-07 Nick Clifton - - * dwarf.c (display_debug_lines_decoded): Force a NUL termination - of the truncated file name. - -2020-02-06 Andrew Burgess - - * objdump.c (print_jump_visualisation): New function. - (disassemble_bytes): Call new function. - -2020-02-06 Alan Modra - - * testsuite/lib/binutils-common.exp (match_target): Accept '!' before - TCL procedure. - (supports_gnu_osabi): New procedure. - (is_generic): New, from ld-lib.exp. - (supports_gnu_unique): Use the above. - -2020-02-04 Alan Modra - - * Makefile.am (CFILES): Add od-elf32_avr.c. - * Makefile.in: Regenerate. - * po/POTFILES.in: Regenerate. - -2020-02-03 Andreas Schwab - - * readelf.c (dump_relocations, dump_relocations) - (decode_arm_unwind_bytecode, process_dynamic_section) - (get_symbol_visibility, get_alpha_symbol_other): Add newline to - error message. - -2020-02-03 Sergei Trofimovich - - * coffdump.c (program_name): Drop redundant definition. - * srconv.c (program_name): Likewise - * sysdump.c (program_name): Likewise - -2020-02-02 H.J. Lu - - PR gas/25380 - * objdump.c (sym_ok): Return FALSE if 2 sections are in the - same file with different section pointers. - -2020-02-01 Nick Clifton - - * README-how-to-make-a-release: Update with more details on the - release making process. - -2020-01-31 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2020-01-28 Nick Clifton - - * readelf.c (get_build_id): Simplify warning message about corrupt - notes encountered whilst scanning for the build-id. - -2020-01-27 Roland McGrath - - * objcopy.c (compare_gnu_build_notes): Fix comparison results - for overlapping ranges so that (A == B) == (B == A) holds. - -2020-01-27 Alan Modra - - * testsuite/lib/binutils-common.exp (big_or_little_endian): Replace - case statement with switch statement. - -2020-01-24 Nick Clifton - - * readelf.c (get_build_id): Fix warning messages about corrupt - notes. - -2020-01-23 Nick Clifton - - * po/fr.po: Updated French translation. - -2020-01-22 Yuri Chornoivan - - PR 25417 - * readelf.c (get_alpha_symbol_other): Fix error message typo. - -2020-01-20 Nick Clifton - - * po/pt.po: Updated Portuguese translation. - * po/uk.po: Updated Ukranian translation. - -2020-01-18 Nick Clifton - - * README-how-to-make-a-release: Update notes on how to cut a - branch for a release. - -2020-01-18 Nick Clifton - - * configure: Regenerate. - * po/binutils.pot: Regenerate. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-17 Thomas Troeger - - * objdump.c (jump_info_visualize_address): Discard jumps that are - no longer needed. - (disassemble_bytes): Only compute the maximum level if jumps were - detected. - -2020-01-13 Nick Clifton - - * objdump.c (disassemble_bytes): Remove C99-ism. - * testsuite/binutils-all/debuginfod.exp: New tests. - -2020-01-13 Thomas Troeger - - * objdump.c (visualize_jumps, color_output, extended_color_output) - (detected_jumps): New variables. - (usage): Add the new jump visualization options. - (option_values): Add new option value. - (long_options): Add the new option. - (jump_info_new, jump_info_free): New functions. - (jump_info_min_address, jump_info_max_address): Likewise. - (jump_info_end_address, jump_info_is_start_address): Likewise. - (jump_info_is_end_address, jump_info_size): Likewise. - (jump_info_unlink, jump_info_insert): Likewise. - (jump_info_add_front, jump_info_move_linked): Likewise. - (jump_info_intersect, jump_info_merge): Likewise. - (jump_info_sort, jump_info_visualize_address): Likewise. - (disassemble_jumps): New function - used to locate jumps. - (disassemble_bytes): Add ascii art generation. - (disassemble_section): Add scan to locate jumps. - (main): Parse the new visualization option. - * doc/binutils.texi: Document the new feature. - * NEWS: Mention the new feature. - -2020-01-13 Alan Modra - - PR 25360 - PR 25361 - * dwarf.c (display_debug_frames): Move fde_fc earlier. Free - fde_fc col_type and col_offset. - * readelf.c (apply_relocations): Move symsec check earlier. - (free_debug_section): Free reloc_info. - (process_notes_at): Free pnotes on error path. - (process_object): Free dump_sects here.. - (process_archive): ..not here. - -2020-01-13 Alan Modra - - PR 25362 - * nm.c (display_rel_file): Free dyn_syms. - -2020-01-09 Nick Clifton - - PR 25220 - * objcopy.c (empty_name): New variable. - (need_sym_before): Prevent an attempt to free a static variable. - (filter_symbols): Avoid strcmp test by checking for pointer - equality. - -2020-01-09 Nick Clifton - - * po/zh_TW.po: Updated Traditional Chinese translation. - -2020-01-09 Aaron Merey - - * Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod. - * Makefile.in: Regenerate. - * NEWS: Update. - * config.in: Regenerate. - * configure: Regenerate. - * configure.ac: Call AC_DEBUGINFOD. - * doc/Makefile.in: Regenerate. - * doc/binutils.texi: Add section on using binutils - with debuginfod. - * dwarf.c (debuginfod_fetch_separate_debug_info): New function. - Query debuginfod servers for the target debug file. - (load_separate_debug_info): Call - debuginfod_fetch_separate_debug_info if configured with - debuginfod. - (load_separate_debug_files): Add file argument to - load_separate_debug_info calls. - * dwarf.h (get_build_id): Add declaration. - * objdump.c (get_build_id): New function. Get build-id of file. - * readelf.c (get_build_id): Likewise. - * testsuite/binutils-all/debuginfod.exp: New tests. - * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id - section. - -2020-01-02 Sergey Belyashov - - * readelf.c: Add support for new Z*) relocations and machine - types. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2019 +For older changes see ChangeLog-2020 -Copyright (C) 2020 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/binutils/ChangeLog-2020 b/binutils/ChangeLog-2020 new file mode 100644 index 00000000000..7bd55845686 --- /dev/null +++ b/binutils/ChangeLog-2020 @@ -0,0 +1,2080 @@ +2020-12-31 Alan Modra + + PR 27128 + * nm.c (print_symname): Append version string to symbol name + before printing the lot under control of "form". Append version + to demangled names too. + +2020-12-29 H.J. Lu + + * elfedit (usage): Pass osabi to reconcat. + +2020-12-28 H.J. Lu + + * testsuite/binutils-all/compress.exp (test_gnu_debuglink): Pass + $gcc_gas_flag to target_compile. + +2020-12-24 Alan Modra + + * readelf.c (INT64_MIN): Define if not already defined. + (print_vms_time): Catch 64-bit overflow when converting from + vms time to posix time. Don't segfault if gmtime returns NULL. + +2020-12-23 H.J. Lu + + * NEWS: Mention LAM_U48 and LAM_U57 support. + * elfedit.c (elf_x86_feature): Support lam_u48 and lam_u57. + (usage): Add lam_u48 and lam_u57. + * readelf.c (decode_x86_feature_1): Support LAM_U48 and LAM_U57. + * doc/binutils.texi: Update elfedit with lam_u48 and lam_u57 + support. + * testsuite/binutils-all/x86-64/lam-u48.d: New file. + * testsuite/binutils-all/x86-64/lam-u48.s: Likewise. + * testsuite/binutils-all/x86-64/lam-u57.d: Likewise. + * testsuite/binutils-all/x86-64/lam-u57.s: Likewise. + +2020-12-15 Vivek Das Mohapatra + + * readelf.c (get_dynamic_type): Handle DT_GNU_FLAGS_1. + (process_dynamic_section): Likewise. + +2020-12-11 Cary Coutant + + * readelf.c (get_machine_name): Update list of e_machine values. + +2020-12-11 Sebastian Huber + + * ar.c (write_archive): Cast iostream pointer to FILE *. + * arsup.c (ar_save): Likewise. + * objcopy.c (copy_file): Likewise. + +2020-12-07 Nick Clifton + + * objcopy.c (is_mergeable_note_section): Remove reference to + SHF_GNU_BUILD_NOTE. + +2020-12-07 Siddhesh Poyarekar + + PR 26945 + * ar.c + (write_archive) [!defined (_WIN32) || defined (__CYGWIN32__)]: + Initialize TARGET_STAT and OFD to pass to SMART_RENAME. + * arsup.c + (ar_save) [defined (_WIN32) || defined (__CYGWIN32__)]: + Likewise. + * bucomm.h (smart_rename): Add new arguments to declaration. + * objcopy.c + (strip_main)[defined (_WIN32) || defined (__CYGWIN32__)]: + Initialize COPYFD and pass to SMART_RENAME. + (copy_main) [defined (_WIN32) || defined (__CYGWIN32__)]: + Likewise. + * rename.c (try_preserve_permissions): New function. + (smart_rename): Use it and add new arguments. + +2020-12-07 Siddhesh Poyarekar + + PR 26945 + * objcopy.c (copy_file): New argument IN_STAT. Return stat of + ibfd through it. + (strip_main): Remove redundant stat calls. adjust copy_file + calls. + (copy_main): Likewise. + +2020-12-07 Siddhesh Poyarekar + + PR 26945 + * bucomm.c (make_tempname): Add argument to return file + descriptor. + * bucomm.h (make_tempname): Likewise. + * ar.c: Include libbfd.h. + (write_archive): Adjust for change in make_tempname. Call + bfd_fdopenw instead of bfd_openw. + * objcopy.c: Include libbfd.h. + (copy_file): New argument OFD. Use bfd_fdopenw instead of + bfd_openw. + (strip_main): Adjust for change in make_tempname and + copy_file. + (copy_main): Likewise. + + +2020-12-07 Nick Clifton + + * README-how-to-make-a-release (point releases): Add a note to + update the milestone list on sourceware's bugzilla. + +2020-12-04 Alan Modra + + * dwarf.c (frame_display_row): Do without static variable "sloc". + (cu_tu_indexes_read): Move to file scope. + (free_debug_memory): Reset it here, along with level_type_signed. + Free and clear a number of other static variables. + * readelf.c (arm_attr_public_tag
): Constify, updating.. + (arm_attr_tag_*): ..all these uses. + (process_mips_specific): Free "rels" on error path. + +2020-11-27 Nick Clifton + + PR 26865 + * windres.c (main): If the preprocessor name includes spaces, + ensure that it is quoted. + +2020-11-27 Jozef Lawrynowicz + + * testsuite/lib/binutils-common.exp (supports_noinit_section): New. + (supports_persistent_section): New. + +2020-11-23 Nick Alcock + + * readelf.c (dump_section_as_ctf): Call ctf_arc_symsect_endianness. + +2020-11-25 Alan Modra + + * testsuite/binutils-all/nm.exp (ifunc): xfail more targets. + +2020-11-20 Nick Alcock + + * readelf.c (dump_section_as_ctf): Use .dynsym and .dynstr, not + .symtab and .strtab. + +2020-11-20 Nick Alcock + + * objdump.c (dump_ctf): Report errors from ctf_archive_iter. + * readelf.c (dump_section_as_ctf): Likewise. + +2020-11-20 Nick Alcock + + * objdump.c (dump_ctf): Use ctf_dict_open, not + ctf_arc_open_by_name. + * readelf.c (dump_section_as_ctf): Likewise. + +2020-11-20 Nick Alcock + + * objdump.c (dump_ctf_errs): Rename ctf_file_t to ctf_dict_t. + (dump_ctf_archive_member): Likewise. + (dump_ctf): Likewise. Use ctf_dict_close, not ctf_file_close. + * readelf.c (dump_ctf_errs): Rename ctf_file_t to ctf_dict_t. + (dump_ctf_archive_member): Likewise. + (dump_section_as_ctf): Likewise. Use ctf_dict_close, not + ctf_file_close. + +2020-11-20 Nick Clifton + + PR 22967 + * nm.c (ifunc_type_chars): New variable. + (long_options): Add --ifunc-chars. + (print_symbol): Use ifunc_type_chars for ifunc symbols. + (main): Handle the new option. + * doc/binutils.texi: Document the new option. + * configure.ac: Add --enable-f-for-ifunc-symbols option which + changes the default symbol displayed by nm. + * NEWS: Mention the new feature. + * testsuite/binutils-all/nm.exp: Test the new feature. + * config.in: Regenerate. + * configure: Regenerate. + +2020-11-20 Linda Zhang + + PR 20979 + * dllwrap.c (main): Deprecate and warn the use of dllwrap. + +2020-11-20 Jozef Lawrynowicz + + * testsuite/binutils-all/readelf-maskos-1a.d: Fix test for unrecognized + bit set in SHF_MASKOS range. + * testsuite/binutils-all/readelf-maskos-1b.d: Likewise. + * testsuite/binutils-all/readelf-maskos-unknown.s: New test. + +2020-11-18 Jozef Lawrynowicz + + * NEWS: Announce SHF_GNU_RETAIN support. + * readelf.c (get_elf_section_flags): Handle SHF_GNU_RETAIN. + Recognize SHF_GNU_RETAIN and SHF_GNU_MBIND only for supported OSABIs. + * testsuite/binutils-all/readelf.exp: Run new tests. + Don't run run_dump_test when there isn't an assembler available. + * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Adjust + comment. + * testsuite/binutils-all/readelf-maskos-1a.d: New test. + * testsuite/binutils-all/readelf-maskos-1b.d: New test. + * testsuite/binutils-all/readelf-maskos.s: New test. + * testsuite/binutils-all/retain1.s: New test. + * testsuite/binutils-all/retain1a.d: New test. + * testsuite/binutils-all/retain1b.d: New test. + +2020-11-17 Howard Chu + + * ar.c (main): Place the libdeps record in the second archive + slot. + +2020-11-13 Nick Clifton + + PR 26829 + * dwarf.c (struct dwo_info): Add cu_offset field. + (add_dwo_info): Add cu_offset parameter. Record in new dwo_info + struct. + (add_dwo_name): Add cu_offset field. + (add_dwo_dir): Add cu_offset field. + (add_dwo_id): Add cu_offset field. + (read_and_display_attr_value): Pass cu_offset to dwo recording + functions. + (load_separate_debug_files): Accumulate name, dir and id values + and display once for each CU. + * testsuite/binutils-all/dwo.sL Use a separate CU for the second + dwo link. + * testsuite/binutils-all/readelf.k2: Update expected output. + +2020-11-11 Bernd Edlinger + + * dwarf.c (display_debug_rnglists_list): Only bias the + DW_RLS_offset_pair with the base address. + +2020-11-10 Nick Clifton + + * dwarf.c (skip_attr_bytes): Correctly handle DW_FORM_ref8. + (get_type_abbrev_from_form): Accept DW_FORM_ref8. + +2020-11-09 Andreas Schwab + + * Makefile.am (development.exp): Fix regexp. + * Makefile.in: Regenerate. + +2020-11-09 Nick Clifton + + PR 26847 + * dwarf.c (read_and_display_attr_value): In wide mode, display the + name of the form. + +2020-11-09 Alan Modra + + * elfedit (usage): Avoid false positive "may be used uninitialised". + Don't leak memory. + +2020-11-09 Howard Chu + + * ar.c (main): Use plugin_target rather than "target" when + resetting libdeps_bfd target. + +2020-11-06 H.J. Lu + + * elfedit.c: Include "libiberty.h". + (usage): Update help message. + +2020-11-03 Howard Chu + + * ar.c (long_options): Add --record-libdeps. + (usage): Mention the new option. + (decode_options): Handle the new option. + (replace_members): If necessary, create a bfd to hold the libdeps + description. + * binemul.c (ar_emul_append_bfd): New function. + (ar_emul_replace_bfd): New function. + (ar_emul_default_append): Replace file_name and target arguments + with new_bfd argument. + (ar_emul_default_replace): Likewise. + * binemul.h: Update prototypes. + (struct bin_emulation_xfer_struct): Update fields. + * doc/binutils.texi: Document the new option. + * NEWS: Mention the new feature. + * emul_aix.c (ar_emul_aix_append): Update. + (ar_emul_aix_replace): Likewise. + * testsuite/binutils-all/ar.exp: Add test of new feature. + +2020-10-30 H.J. Lu + + PR gas/26703 + * readelf.c (decode_x86_isa): Handle + * GNU_PROPERTY_X86_ISA_1_BASELINE. + * testsuite/binutils-all/i386/empty.d: Updated. + * testsuite/binutils-all/i386/ibt.d: Likewise. + * testsuite/binutils-all/i386/pr21231a.d: Likewise. + * testsuite/binutils-all/i386/pr21231b.d: Likewise. + * testsuite/binutils-all/i386/shstk.d: Likewise. + * testsuite/binutils-all/x86-64/empty-x32.d: Likewise. + * testsuite/binutils-all/x86-64/empty.d: Likewise. + * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise. + * testsuite/binutils-all/x86-64/ibt.d: Likewise. + * testsuite/binutils-all/x86-64/pr21231a.d: Likewise. + * testsuite/binutils-all/x86-64/pr21231b.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494a.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494c.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494d.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494e.d: Likewise. + * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise. + * testsuite/binutils-all/x86-64/shstk.d: Likewise. + +2020-10-29 H.J. Lu + + PR binutils/26808 + * dwarf.c (abbrev_list): Add abbrev_base. + (new_abbrev_list): Add an abbrev_base argument and record it. + (find_abbrev_list_by_abbrev_offset): Add an abbrev_base argument + and match it. + (process_debug_info): Pass abbrev_base to new_abbrev_list and + find_abbrev_list_by_abbrev_offset. + (display_debug_abbrev): Pass 0 abbrev_base to new_abbrev_list + and find_abbrev_list_by_abbrev_offset. + * testsuite/binutils-all/x86-64/pr26808.dump: New file. + * testsuite/binutils-all/x86-64/pr26808.dwp.bz2: Likewise. + * testsuite/binutils-all/x86-64/x86-64.exp: Run PR binutils/26808 + test. + +2020-10-29 Nick Clifton + + PR 26805 + * objcopy.c (is_dwo_section): Check for missing or short section + names. + +2020-10-26 Andreas Rammhold + + * README-how-to-make-a-release: Use sha256sum instead of md5sum. + +2020-10-28 Nick Clifton + + PR 26795 + * elfedit.c (process_archive): Remove spurious call to free(). + +2020-10-27 Nick Clifton + + * dwarf.c (struct abbrev_list): New structure. Used to collect + lists of abbreviation sets. + (struct abbrev_map): New structure. Used to map CU offsets to + abbreviation offsets. + (record_abbrev_list): New function. A new entry to an + abbreviation list. + (free_all_abbrevs): Update to free abbreviation lists. + (new_abbrev_list): New function. Start a new abbreviation + list. + (find_abbrev_list_by_abbrev_offset): New function. + (find_abbrev_map_by_offset): New function. + (add_abbrev): Add abbrev_list parameter. + (add_abbrev_attr): Likewise. + (process_abbrev_section): Rename to process_abbrev_set and add + list parameter. + (get_type_abbrev_from_form): New function. Attempts to decode the + forms used by DW_AT_type attributes. + (get_type_signedness): Display type names if operating in wide + mode. Use get_type_abbrev_from_form. + (read_and_display_attr_value): Use get_type_abbrev_from_form. + (process_debug_info): Pre-parse the CU headers to collate all the + abbrevs before starting the main scan. + (process_debug_abbrev): Do not free any loaded abbrevs. + (free_debug_memory): Free the abbrev maps. + +2020-10-22 H.J. Lu + + * testsuite/binutils-all/objcopy.exp (objcopy_test): Report + error message on error. + +2020-10-22 Dr. David Alan Gilbert + + * windmc.c (write_header_define): Fix printf format. + (write_header): Likewise. + +2020-10-21 Nick Clifton + + * dwarf.c (skip_attr_bytes): Accept DWARF versions higher than 4 + when processing the DW_FORM_ref_addr form. + Skip bytes in DW_FORM_block and DW_FORM_exprloc forms. + Handle DW_FORM_indirect. + (get_type_signedness): Allow a limited amount of recursion. + Do not attempt to decode types that use the DW_FORM_ref_addr form. + (read_and_display_attr_value): Do not attempt to decode types + that use the DW_FORM_ref_addr form. + +2020-10-20 Alan Modra + + * readelf.c: Delete whitespace at end of line throughout. + (SECTION_NAME, SECTION_NAME_VALID): New. + (SECTION_NAME_PRINT): Rename from SECTION_NAME. Formatting. + (printable_section_name, dump_relocations): Use SECTION_NAME_PRINT. + (process_section_headers, process_section_groups): Likewise. + (shdr_to_ctf_sect): Likewise. + (find_section, find_section_in_set): Use SECTION_NAME_VALID. + (ia64_process_unwind, hppa_process_unwind): Likewise. + (display_debug_section, initialise_dumps_byname): Likewise. + (process_lto_symbol_tables): Likewise. Check trailing period of + lto symbol table names. + (display_lto_symtab): Use sizeof instead of strlen. + +2020-10-20 Nelson Chu + + * MAINTAINERS (RISC-V): Add myself as RISC-V co-maintainer. + +2020-10-19 Nick Clifton + + * readelf.c (do_lto_syms): New local. + (long_option_values): Add OPTION_LTO_SYMS. + (options): Add --lto-syms. + (usage): Mention the new option. + (parse_args): Parse the new option. + (get_lto_kind): New function. + (get_lto_visibility): New function. + (get_lto_sym_type): New function. + (display_lto_symtab): New function - displays the contents of an + LTo symbol table section. + (process_lto_symbol_tables): New functions. Calls + dipslay_lto_symtab on any LTO symbol table section. + (process_object_file): Call process_lto_symbol_tables. + * doc/binutils.texi: Document the new option. + * NEWS: Mention the new feature. + +2020-10-09 H.J. Lu + + PR gas/26703 + * readelf.c (decode_x86_compat_2_isa): New function. + (decode_x86_isa): Updated for new X86_ISA_1_XXX bits. + (decode_x86_feature_1): Handle GNU_PROPERTY_X86_FEATURE_2_MASK. + (print_gnu_property_note): Handle X86_COMPAT_2_ISA_1_USED, + and X86_COMPAT_2_ISA_1_NEEDED. + * testsuite/binutils-all/i386/pr21231b.s: Updated to the current + GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED + values. + * testsuite/binutils-all/x86-64/pr21231b.s: Likewise. + * testsuite/binutils-all/x86-64/pr23494a.s: Likewise. + * testsuite/binutils-all/x86-64/pr23494b.s: Likewise. + * testsuite/binutils-all/x86-64/pr23494c.s: Likewise. + * testsuite/binutils-all/i386/empty.d: Updated. + * testsuite/binutils-all/i386/ibt.d: Likewise. + * testsuite/binutils-all/i386/pr21231a.d: Likewise. + * testsuite/binutils-all/i386/pr21231b.d: Likewise. + * testsuite/binutils-all/i386/shstk.d: Likewise. + * testsuite/binutils-all/x86-64/empty-x32.d: Likewise. + * testsuite/binutils-all/x86-64/empty.d: Likewise. + * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise. + * testsuite/binutils-all/x86-64/ibt.d: Likewise. + * testsuite/binutils-all/x86-64/pr21231a.d: Likewise. + * testsuite/binutils-all/x86-64/pr21231b.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494a.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494c.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494d.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494e.d: Likewise. + * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise. + * testsuite/binutils-all/x86-64/shstk.d: Likewise. + +2020-10-06 Nick Clifton + + * objcopy.c (copy_object): Compare input and output sections by + pointer rather than name. + +2020-10-05 Nick Clifton + + PR 26698 + * windmc.c (mc_unify_path): Fix typo checking character at end of + pathname. + +2020-10-05 Samanta Navarro + + * doc/binutils.texi: Fix spelling mistakes. + +2020-09-29 Mark Wielaard + + * dwarf.c (display_loclists_list): Handle DW_LLE_start_end and + DW_LLE_start_length. Only add base_address for DW_LLE_offset_pair. + +2020-09-25 Alan Modra + + * elfcomm.c (byte_put_little_endian, byte_put_big_endian): Support + more field sizes. + * readelf.c (target_specific_reloc_handling ): Limit + allowed reloc_size. Don't read_leb128 outside of section. + +2020-09-23 Mark Wielaard + + * dwarf.c (process_debug_info): Print Unit Type for DWARF5. + * testsuite/binutils-all/dw5.W: Adjust expected output. + * testsuite/binutils-all/dwarf-attributes.W: Likewise. + +2020-09-23 Mark Wielaard + + * dwarf.c (read_and_display_attr_value): Handle DW_FORM_ref_addr + for dwarf_version 5 just as version 3 and 4 (only 2 is + different). + (process_debug_info): Allow DW_UT_partial. + +2020-09-24 Nick Clifton + + PR 26662 + * doc/binutils.texi (nm): Document that 'c' is used for small + common symbols. + +2020-09-21 Ludovic Courtès + + * doc/binutils.texi (objcopy, strip): Say that + '--strip-unneeded' implies '--strip-debug'. + +2020-09-16 Anatoly Parshintsev + + * verilog.c (verilog_write_address): Properly handle 64-bit + addresses to avoid truncation of the high part. + +2020-09-16 Alan Modra + + * nm.c (print_symbol): Adjust elf_symbol_from invocation. + * objcopy.c (is_hidden_symbol): Likewise. + +2020-09-15 Nick Clifton + + * README-how-to-make-a-release (https): Add a reminder to create a + new Bugzilla tag for the point release, once it has been published. + +2020-09-11 H.J. Lu + + * readelf.c (get_note_type): Support NT_X86_CET. + +2020-09-11 Nick Clifton + + PR 26595 + * dwarf.c (load_separate_debug_info): Return NULL rather than + FALSE in error situations. + (load_separate_debug_file): Move code to load debug links to ... + (check_for_and_load_links): ... here. New function. Load + separate debug information pointed to by debuglink and + debugaltlink sections. Recursively scan newly loaded debug + information for more links and load them too. + +2020-09-09 Alan Modra + + PR 26578 + * dwarf.c (parse_gnu_debugaltlink): Don't alloc build_id_data. + (load_separate_debug_files): Use a stack var for build_id_data. + +2020-09-08 H.J. Lu + + PR ld/26587 + * testsuite/binutils-all/objcopy.exp: Pass --disable-reloc-section + to ld on PE targets for PR 25662 test. + +2020-09-08 Jozef Lawrynowicz + Kuan-Lin Chen + + * readelf.c (target_specific_reloc_handling): Handle + R_MSP430{,X}_GNU_{SET,SUB}_ULEB128. + +2020-09-02 Alan Modra + + * objdump.c (disassemble_bytes): Use an unsigned type for "addend". + +2020-08-30 Alan Modra + + * readelf.c (print_gnu_build_attribute_name): Use unsigned long + long for "bytes". + +2020-08-28 Nick Clifton + + PR 26548 + * dwarf.c (read_leb128): When checking for overflow of a signed + read, use a signed shift. + +2020-08-28 Cooper Qu + + * readelf.c (get_csky_section_type_name): New. + (get_section_type_name): Add handler for CSKY. + (display_csky_attribute): New. + (process_arch_specific): Add handler for CSKY. + * testsuite/binutils-all/strip-3.d: Remove .csky.attributes + section. + +2020-08-27 Jozef Lawrynowicz + + * readelf.c (get_msp430x_section_type_name): Rename to ... + (get_msp430_section_type_name): ... this. + (get_section_type_name): Use get_msp430_section_type_name. + (display_msp430x_attribute): Rename to ... + (display_msp430_attribute): ... this. + (process_arch_specific): Use display_msp430_attribute. + +2020-08-27 John David Anglin + + PR 26356 + * testsuite/binutils-all/objcopy.exp (objcopy --reverse-bytes): Add + "-j $PRIVATE$" to command on hppa*-*-hpux*. + * testsuite/lib/utils-lib.exp (default_binutils_run): Remove existing + dollar-sign quotes before quoting. Do this prior to generating log + output. + +2020-08-27 Ralf Habacker + + PR 26088 + * mclex.c (skip_until_eol): If eol was found, increment line + number. + +2020-08-27 Nick Alcock + + * objdump.c (dump_ctf_errs): Unquote CTF error messages. + * readelf.c (dump_ctf_errs): Likewise. + +2020-08-27 Nick Alcock + + * objdump.c (dump_ctf_archive_member): Move error- + reporting... + (dump_ctf_errs): ... into this separate function. + (dump_ctf): Call it on open errors. + * readelf.c (dump_ctf_archive_member): Move error- + reporting... + (dump_ctf_errs): ... into this separate function. Support + calls with NULL fp. Adjust for new err parameter to + ctf_errwarning_next. + (dump_section_as_ctf): Call it on open errors. + +2020-08-27 Nick Alcock + + * Makefile.am (readelf_LDADD): Move $(LIBINTL) after $(LIBCTF_NOBFD). + * Makefile.in: Regenerated. + +2020-08-26 Nick Clifton + + PR 26405 + * readelf.c (get_segment_type): Handle OpenBSD segment types. + +2020-08-26 Alan Modra + + PR 26412 + * objcopy.c (copy_object): Don't fwrite NULL contents. + +2020-08-26 Katayama Hirofumi + + PR 26340 + * rcparse.y (AUTOCHECKBOX): Add WS_TABSTOP to the base style. + +2020-08-24 Alan Modra + + * readelf.c (dump_section_as_strings) Avoid false positive + "may be used uninitialised". + +2020-08-22 H.J. Lu + + PR ld/26382 + * nm.c (print_symname): Display only one '@' for undefined + versioned symbols. + * doc/binutils.texi: Update nm version information. + +2020-08-21 Mark Wielaard + + * testsuite/binutils-all/readelf.exp (readelf_wi_test): Also + recognize DW_LANG_C11. + +2020-08-19 Alan Modra + + PR 26349 + * readelf.c (dump_relocations): Use BFD_VMA_FMT to print offset + and info fields. + (dump_section_as_strings): Don't use %tx to display offset. + +2020-08-14 Alan Modra + + PR 26388 + * dwarf.c (free_debug_memory): Free alloc_num_debug_info_entries + of debug_information. Correct test of max_loc_offsets and + max_range_lists. + * rddbg.c (read_debugging_info): Free dhandle on error. + +2020-08-14 Alan Modra + + * testsuite/binutils-all/mangled.s: Use dc.a rather than dc.d. + +2020-08-13 Alan Modra + + PR 26348 + * objcopy.c (copy_object): Report file name with endian error. + Error and return on abfd->read_only. + +2020-08-12 Tom Tromey + + * dwarf-mode.el (Version): Now 1.6. + (dwarf-die-button-action): Tighten DIE reference regexp. + (dwarf-font-lock-keywords): Update name regexp. + +2020-08-12 Nick Clifton + + PR binutils/26331 + * readelf.c (do_demangle): New option flag. + (print_symbol): If do_demangle is enabled, demangle the symbol. + (enum long_option_values): New enum to hold long option values. + (options): Add demangle, no-demangle, recursion-limit and + no-recursion-limit options. Alpha sort the table. + (usage): Describe the new options. + (parse_args): Handle the new options. + * NEWS: Mention the new feature. + * doc/binutils.texi: Document the new feature. + * testsuite/binutils-all/readelf.exp: Test the new feature. + * testsuite/binutils-all/mangled.s: New file - assembler source. + * testsuite/binutils-all/readelf.demangled: New file - expected + output from readelf. + +2020-08-12 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-08-10 H.J. Lu + + PR binutils/26302 + * nm.c (with_symbol_versions): Removed. + (long_option_values): Add OPTION_WITH_SYMBOL_VERSIONS. + (long_options): Update --with-symbol-versions entry. + (print_symbol): Remove the with_symbol_versions check. + (main): Add OPTION_WITH_SYMBOL_VERSIONS for backward + compatibility. + * doc/binutils.texi: Remove --with-symbol-versions. + +2020-08-05 Alan Modra + + PR 26337 + * objdump.c (load_specific_debug_section): Revert last change. + +2020-08-05 Alan Modra + + PR 26337 + * objdump.c (load_specific_debug_section): Don't malloc space for + section contents, use bfd_malloc_and_get_section. + +2020-07-30 Rainer Orth + + * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. + * Makefile.in, doc/Makefile.in: Regenerate. + * configure: Regenerate. + +2020-07-30 H.J. Lu + + * testsuite/binutils-all/i386/compressed-1a.d: Pass --gdwarf-3 + to assembler. + * testsuite/binutils-all/i386/compressed-1b.d: Likewise. + * testsuite/binutils-all/i386/compressed-1c.d: Likewise. + * testsuite/binutils-all/x86-64/compressed-1a.d: Likewise. + * testsuite/binutils-all/x86-64/compressed-1b.d: Likewise. + * testsuite/binutils-all/x86-64/compressed-1c.d: Likewise. + +2020-07-29 Maciej W. Rozycki + + * testsuite/binutils-all/mips/global-local-symtab-sort-o32.d: + New test. + * testsuite/binutils-all/mips/global-local-symtab-sort-o32t.d: + New test. + * testsuite/binutils-all/mips/global-local-symtab-sort-n32.d: + New test. + * testsuite/binutils-all/mips/global-local-symtab-sort-n32t.d: + New test. + * testsuite/binutils-all/mips/global-local-symtab-sort-n64.d: + New test. + * testsuite/binutils-all/mips/global-local-symtab-sort-n64t.d: + New test. + * testsuite/binutils-all/mips/global-local-symtab-final-o32.d: + New test. + * testsuite/binutils-all/mips/global-local-symtab-final-n32.d: + New test. + * testsuite/binutils-all/mips/global-local-symtab-final-n64.d: + New test. + * testsuite/binutils-all/mips/mips.exp: Run the new tests. + +2020-07-29 Maciej W. Rozycki + + * testsuite/binutils-all/mips/global-local-symtab-o32.d: New + test. + * testsuite/binutils-all/mips/global-local-symtab-o32t.d: New + test. + * testsuite/binutils-all/mips/global-local-symtab-n32.d: New + test. + * testsuite/binutils-all/mips/global-local-symtab-n32t.d: New + test. + * testsuite/binutils-all/mips/global-local-symtab-n64.d: New + test. + * testsuite/binutils-all/mips/mips.exp: Run the new tests. + +2020-07-28 H.J. Lu + + PR binutils/26301 + * configure: Regenerated. + +2020-07-28 H.J. Lu + + PR binutils/26301 + * configure: Regenerated. + +2020-07-27 Alan Modra + + * objdump.c (dump_section): Don't return without calling + process_section_p. + +2020-07-27 H.J. Lu + + * doc/binutils.texi: Replace preceeded with preceded. + +2020-07-26 Maciej W. Rozycki + + * testsuite/binutils-all/mips/mips.exp (run_dump_test_abi) + (run_dump_test_o32, run_dump_test_n32, run_dump_test_n64): New + procedures. + (has_newabi): Remove variable. + (has_abi, abi_asflags, abi_ldflags): New associative array + variables. + (irixemul): New variable. + Replace `run_dump_test' calls where applicable throughout with + `run_dump_test_o32', `run_dump_test_n32' and `run_dump_test_n64' + as appropriate. Use `noarch' for tests that require their own + architecture setting. + * testsuite/binutils-all/mips/mips-ase-1.d: Remove GAS flags. + * testsuite/binutils-all/mips/mips-ase-2.d: Likewise. + * testsuite/binutils-all/mips/mips-ase-3.d: Likewise. + * testsuite/binutils-all/mips/mips-note-2-n32.d: Likewise. + * testsuite/binutils-all/mips/mips-note-2-n64.d: Likewise. + * testsuite/binutils-all/mips/mips-note-2.d: Likewise. + * testsuite/binutils-all/mips/mips-note-2r-n32.d: Likewise. + * testsuite/binutils-all/mips/mips-note-2r-n64.d: Likewise. + * testsuite/binutils-all/mips/mips-note-2r.d: Likewise. + * testsuite/binutils-all/mips/mips-reginfo-n32.d: Likewise. + * testsuite/binutils-all/mips/mips-reginfo.d: Likewise. + * testsuite/binutils-all/mips/mips16-extend-noinsn.d: Likewise. + * testsuite/binutils-all/mips/mips16-pcrel.d: Likewise. + * testsuite/binutils-all/mips/mips16-alias.d: Remove `-32' from + GAS flags. + * testsuite/binutils-all/mips/mips16-extend-insn.d: Likewise. + * testsuite/binutils-all/mips/mips16-noalias.d: Likewise. + * testsuite/binutils-all/mips/mips16-undecoded.d: Likewise. + * testsuite/binutils-all/mips/mips16e2-extend-insn.d: Likewise. + * testsuite/binutils-all/mips/mips16e2-undecoded.d: Likewise. + * testsuite/binutils-all/mips/mixed-micromips.d: Likewise. + * testsuite/binutils-all/mips/mixed-mips16.d: Likewise. + +2020-07-24 Aaron Merey + + * Makefile.am: Replace LIBDEBUGINFOD with DEBUGINFOD_LIBS. + * Makefile.in: Rebuild. + * configure: Rebuild. + * doc/Makefile.in: Rebuild. + +2020-07-24 Nick Clifton + + * README-how-to-make-a-release: Various small updates whilst + creating the 2.35 release. + +2020-07-22 Nick Alcock + + * testsuite/lib/binutils-common.exp (run_dump_test): Add 'cc' + option. + +2020-07-22 Nick Alcock + + * objdump.c (dump_ctf_archive_member): Remove linefeeds. + (dump_ctf): Likewise. + +2020-07-22 Nick Alcock + + * objdump.c (ctf_archive_member): Print CTF errors and warnings. + * readelf.c (dump_ctf_archive_member): Likewise. + +2020-07-22 Nick Clifton + + * readelf.c (parse_args): Silence potential warnings about a + memory resource leak when allocating space for ctf option values. + (dump_section_as_ctf): Fix typo checking dump_ctf_strtab_name + variable. + +2020-07-21 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2020-07-14 Claudiu Zissulescu + + * testsuite/binutils-all/arc/double_regs.s: New test. + * testsuite/binutils-all/arc/objdump.exp: Add the above test. + +2020-07-13 Nick Clifton + + * po/fr.po: Updated French translation. + +2020-07-13 Alan Modra + + * testsuite/lib/binutils-common.exp (is_pecoff_format): Accept + optional machine-os arg. + +2020-07-11 H.J. Lu + + * readelf.c (decode_x86_feature_2): Handle + GNU_PROPERTY_X86_FEATURE_2_TMM. + +2020-07-10 Tom de Vries + + * dwarf.c (display_debug_lines_decoded): Don't emit meaningless + information in the end_sequence row. + * testsuite/binutils-all/dw5.W: Update. + * testsuite/binutils-all/objdump.WL: Update. + +2020-07-09 Alan Modra + + * dlltool.c: Remove powerpc PE support and comments. + * configure.ac: Remove powerpc PE dlltool config. + * configure: Regenerate. + +2020-07-09 Nick Clifton + + * rclex.c: Add OWNERDRAW keyword. + * rcparse.y: Add OWNERDRAW token. + (menuitem_flag) Add BITMAP and OWNERDRAW entries. + * resrc.c (write_rc_menuitems): Add support for OWNERDRAW and + BITMAP flags. + * windres.c (extended_menuitems): Likewise. + * testsuite/binutils-all/windres/menuitem_flags.rc: New test. + +2020-07-09 Alan Modra + + * readelf (slurp_hppa_unwind_table): Set table_len before use + in relocation sanity checks. + +2020-07-07 Alan Modra + + * testsuite/binutils-all/ar.exp: Use is_xcoff_format. + * testsuite/binutils-all/nm.exp: Likewise. + * testsuite/binutils-all/copy-2.d: Run only for elf and pe targets. + * testsuite/binutils-all/copy-3.d: Run only for elf targets. + * testsuite/binutils-all/set-section-alignment.d: Likewise. + * testsuite/binutils-all/copy-4.d: Don't run for xcoff. + +2020-07-07 Alan Modra + + * testsuite/lib/binutils-common.exp (is_xcoff_format): New. + * testsuite/binutils-all/objcopy.exp (pr25662): Exclude xcoff. + +2020-07-06 Nick Clifton + + * po/bg.po: Updated Bulgarian translation. + * po/pt.po: Updated Portuguese translation. + * po/uk.po: Updated Ukranian translation. + +2020-07-06 Alan Modra + + * readelf.c (print_dynamic_symbol): Don't sprintf to buffer to + find string length. + +2020-07-04 Nick Clifton + + * configure: Regenerate. + * po/binutils.pot: Regenerate. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-07-02 Nick Clifton + + PR 26028 + * readelf.c (print_symbol): Handle truncation of symbol names. + (options): Add -T/--silent-truncation option. + (parse_args): Handle the option. + (print_dynamic_symbol): Correct calculation of width available to + display symbol name. + * doc/binutils.texi: Document the -T option to readelf. + * NEWS: Mention the new feature. + +2020-06-30 H.J. Lu + + * NEWS: Mention x86 NaCl target support removal. + * dwarf.c (init_dwarf_regnames_by_bfd_arch_and_mach): Remove + x86 NaCl target support. + * testsuite/binutils-all/elfedit-1.d: Likewise. + * testsuite/binutils-all/i386/i386.exp: Likewise. + * testsuite/binutils-all/x86-64/objects.exp: Likewise. + * testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494a.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494b-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494b.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494c.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494d.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise. + * testsuite/binutils-all/x86-64/pr23494e.d: Likewise. + * testsuite/binutils-all/x86-64/x86-64.exp: Likewise. + +2020-06-30 Nick Clifton + + * dwarf.c (read_and_display_attr_value): Support + DW_FORM_GNU_strp_alt when used with DW_AT_dwo_name and + DW_AT_comp_dir. + +2020-06-30 Alan Modra + + * testsuite/binutils-all/readelf.exp (readelf_dump_test): Remove + xfail for nds32. + +2020-06-29 Hans-Peter Nilsson + + * dwarf.c (display_debug_str_offsets): Rename local variable + index to idx. Move to top of function. + +2020-06-29 Alan Modra + + * dwarf.c: Use C style comments. + * resrc.c: Likewise. + +2020-06-27 Alan Modra + + * elfcomm.c (setup_nested_archive): Set nested_arch->file to NULL + after freeing. + (release_archive): Set fields of arch to NULL after freeing. + +2020-06-26 Nick Alcock + + * readelf.c (dump_section_as_ctf): Support .ctf archives using + ctf_arc_bufopen. Automatically load the .ctf member of such + archives as the parent of all other members, unless specifically + overridden via --ctf-parent. Split out dumping code into... + (dump_ctf_archive_member): ... here, as in objdump, and call + it once per archive member. + (dump_ctf_indent_lines): Code style fix. + +2020-06-26 Nick Alcock + + * configure.ac [--enable-libctf]: New, default yes. + Set ENABLE_LIBCTF accordingly. + * Makefile.am [!ENABLE_LIBCTF]: Empty LIBCTF and LIBCTF_NOBFD. + * configure: Regenerate. + * config.in: Regenerate. + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * objdump.c (usage): Conditionalize portions on ENABLE_LIBCTF. + (option_values): Likewise. + (long_options): Likewise. + (main): Likewise. + (dump_ctf_indent_lines): Conditionalize out when !ENABLE_LIBCTF. + (make_ctfsect): Likewise. + (dump_ctf_archive_member): Likewise. + (dump_ctf) [ENABLE_LIBCTF]: Likewise. + (dump_ctf) [!ENABLE_LIBCTF]: New empty stub. + * readelf.c (options): Conditionalize portions on ENABLE_LIBCTF. + (usage): Likewise. + (process_section_contents): Likewise. + (shdr_to_ctf_sect): Conditionalize out when !ENABLE_LIBCTF. + (dump_ctf_indent_lines): Likewise. + (dump_section_as_ctf) [ENABLE_LIBCTF]: Likewise. + +2020-06-26 Jan Beulich + + * doc/binutils.texi: Adjust description of x86's -Msuffix. Drop + redundant text from x86 specific part of -M section. + +2020-06-26 Pat Bernardi + + * readelf.c (display_m68k_gnu_attribute): New function. + (process_arch_specific): Call display_m68k_gnu_attribute for EM_68K. + +2020-06-23 H.J. Lu + + PR binutils/26160 + * testsuite/binutils-all/pr26160.dwp.bz2: New file. + * testsuite/binutils-all/pr26160.r: Likewise. + * testsuite/binutils-all/readelf.exp: Run PR binutils/26160 test. + +2020-06-23 Nick Clifton + + PR 26160 + * dwarf.c (fetch_indexed_string): Detect and handle old style + .debug_str_offset tables. + (display_debug_str_offsets): Likewise. Also add support for + .debug_str_offsets.dwo sections. + +2020-06-23 H.J. Lu + + PR binutils/26112 + * testsuite/binutils-all/pr26112.o.bz2: New file. + * testsuite/binutils-all/pr26112.r: Likewise. + * testsuite/binutils-all/readelf.exp: Run PR binutils/26112 test. + +2020-06-23 Alan Modra + + * testsuite/binutils-all/objdump.exp (bintest.a): Correct + remote_file delete command. + +2020-06-22 Nick Clifton + + PR 26112 + * dwarf.c (display_debug_str_offsets): Add code to display the + contents of the .debug_str_offsets section. + (display_debug_macro): Add support for DW_MACRO_define_strx and + DW_MACRO_undef_strx. + +2020-06-22 Saagar Jha + + * od-macho.c: Dump linkedit data for new load commands. + +2020-06-19 Alan Modra + + * testsuite/config/default.exp (ld_elf_shared_opt): Don't set. + * testsuite/lib/binutils-common.exp (check_relro_support): New proc. + (run_dump_test): Use check_relro_support to decide whether to pass + extra ld option "-z norelro". + +2020-06-11 Alan Modra + + * readelf.c (process_mips_specific): Don't alloc memory for + Elf_Internal_Options. + +2020-06-11 Alan Modra + + * readelf.c (process_mips_specific): Assert size of internal + types match size of external types, and simplify allocation of + internal buffer. Catch possible integer overflow when sanity + checking option size. Don't assume options are a regular array. + Sanity check reginfo option against option size. Use PRI macros + when printing. + +2020-06-10 Ralf Habacker + + PR 26082 + * mclex.c (yylex): Reject lines that reach end-of-file without a + terminating newline character. + +2020-06-08 Nick Clifton + + PR 26093 + * doc/binutils.texi (strings): Fix typo. + +2020-06-08 Nick Clifton + + PR 26086 + * dwarf.c (process_debug_info): Check that there is space in the + debug_information array before filling in an entry. + +2020-06-06 Alan Modra + + * doc/binutils.texi (PowerPC -M option): Mention power10 and pwr10. + +2020-06-05 Joel Anderson + + PR 26082 + * mclex.c (yylex): Add test for an empty input stream. + +2020-06-04 Stephen Casner + + * testsuite/binutils-all/pr25662-pdp11.s: Alternate source file + for test using section pseudo-ops compatible with pdp11. + * testsuite/binutils-all/objcopy.exp: Select alternate source. + +2020-06-04 Jose E. Marchesi + + * objdump.c (disassemble_data): Set disasm_info.endian_code to + disasm_info.endian after the latter is initialized to the + endianness reported by BFD. + +2020-06-04 Alan Modra + + * testsuite/binutils-all/i386/i386.exp: Remove global directive + outside proc body. + * testsuite/binutils-all/x86-64/objects.exp: Likewise. + * testsuite/binutils-all/x86-64/x86-64.exp: Likewise. + +2020-06-03 Joel Anderson + + * windmc.h (struct mc_node): Add id_typecast field. + * mcparse.y (message): Initialise the id_typecast field. + * windmc.c (write_dbg): Use the id_typecast field as a parameter + when calling write_dbg_define. + (write_header): Likewise. + +2020-06-03 Alan Modra + + PR 26069 + * objcopy.c (copy_relocations_in_section): Free relpp on error. + Don't accidentally free isection->orelocation. + +2020-06-02 Alan Modra + + * testsuite/binutils-all/ar.exp (obj): Set up object file name + extension. Use throughout. Don't completely exclude non-ELF + alpha targets. Run long_filenames test for tic30. Exclude thin + archive tests for aix, ecoff and vms. + * estsuite/binutils-all/objdump.exp (obj): Set up object file name + extension. Use throughout. Don't exclude non-ELF alpha targets + from "bintest.a". + +2020-05-28 Max Filippov + + * MAINTAINERS (Xtensa): Add myself as maintainer. + +2020-05-23 Alan Modra + + * testsuite/binutils-all/ar.exp (many_files): New test. + +2020-05-21 Alan Modra + + * addr2line.c: Replace "if (x) free (x)" with "free (x)" throughout. + * dlltool.c: Likewise. + * elfcomm.c: Likewise. + * rddbg.c: Likewise. + * readelf.c: Likewise. + * stabs.c: Likewise. + * windmc.c: Likewise. + * windres.c: Likewise. + * wrstabs.c: Likewise. + +2020-05-21 Alan Modra + + * readelf.c (get_num_dynamic_syms): Bounds check mipsxlat array + access. + +2020-05-20 Nelson Chu + + * dwarf.c: Updated since DECLARE_CSR is changed. + +2020-05-19 H.J. Lu + + PR binutils/25809 + * readelf.c (process_program_headers): Warn if the PT_DYNAMIC + segment doesn't match the .dynamic section and checks are + enabled. + (struct filedata): Add dynamic_symtab_section and + dynamic_strtab_section fields. + (process_section_headers): Set dynamic_symtab_section to the + .dynsym section. Set dynamic_strtab_section to the .dynstr + section. + (process_dynamic_section): Warn if the .dynsym section doesn't + match DT_SYMTAB and DT_SYMENT or the .dynstr section doesn't + DT_STRTAB and DT_STRSZ. But only if checks are enabled. + +2020-05-19 Alan Modra + + * ar.c (map_over_members, get_pos_bfd, delete_members, move_members), + (replace_members): Use bfd_get_filename rather than accessing + bfd->filename directly. + * arsup.c (map_over_list, ar_delete, ar_replace, ar_extract): Likewise. + * binemul.c (do_ar_emul_append): Likewise. + * coffgrok.c (coff_grok): Likewise. + +2020-05-18 Stafford Horne + + * MAINTAINERS (OR1K): Add myself as maintainer. + +2020-05-07 Andrew Burgess + + * doc/binutils.texi: Mention 'entry address' in the set-start and + adjust-start options descriptions. + +2020-05-05 Nick Clifton + + * dwarf.c (do_checks): New global variable. + (display_formatted_table): Warn about an unexpected number of + columns in the table, if checks are enabled. Do not complain + about the lack of data following the number of entries in the + table if the table is empty. + (display_debug_lines_decoded): Only warn about an unexpected + number of columns in a table if checks are enabled. + * dwarf.h (do_checks): Add a prototype. + * elfcomm.c (error): Remove weak attribute. + (warn): Likewise. + * readelf.c (do_checks): Delete. + (warn): Delete. + (process_section_headers): Only warn about empty sections if + checks are enabled. + +2020-05-04 Fangrui Song + + * objcopy.c (copy_object): Allow empty section. + * testsuite/binutils-all/update-section.exp: Add test. + +2020-05-04 Nick Clifton + + PR 25917 + * dwarf.c (display_debug_lines_decoded): Warn if encountering a + supicious number of entries for DWARF-5 format directory and file + name tables. Do not display file name table header if the table + is empty. Do not allocate space for empty tables. + +2020-05-04 Alan Modra + + * readelf.c (process_nds32_specific): Check size of .nds32_e_flags + section. Don't assume endian of host matches nds32 target. Free + buffer. + +2020-05-01 Alan Modra + Haim Shimonovich + + * objdump.c (disassemble_bytes): Don't scan for zeros when + disassembling zeros. Translate "resuming at file offset" message. + Formatting. Replace some signed variables with unsigned. + +2020-04-30 Alex Coplan + + * testsuite/binutils-all/aarch64/in-order-all.d: Update to use new + disassembly. + * testsuite/binutils-all/aarch64/out-of-order-all.d: Likewise. + +2020-04-30 Nick Clifton + + * testsuite/lib/binutils-common.exp (check_pie_support): New + proc. + +2020-04-29 Andrew Burgess + + * dwarf.c (display_debug_ranges): Ignore duplicate entries in + range_entries for the same offset. + +2020-04-29 Nick Clifton + + * readelf.c (warn): New function - like elfcomm.c version but only + produces output if warnings are enabled. + (struct options): Add --lint and --enable-checks. + (usage): Add entry for --lint. + (parse_args): Handle -L. If checks are enabled but no dumps have + been selected then enable all dumps. + (process_section_headers): Replace long if-then-else sequence with + a switch. Add warning messages for empty SHT_REL, SHT_RELA and + SHT_PROGBITS sections. + (process_file): Do not complain if the file is an archive and lint + mode has been enabled. + * elfcomm.c (error): Make the function weak. + (warn): Likewise. + * NEWS: Mention the new feature. + * doc/binutils.texi: Document the new feature. + * dwarf.h (report_leb_status): Add file name and line number + parameters. Include them in the diagnostic output. + (READ_ULEB): Pass file and line number to report_leb_status. + (READ_SLEB): Likewise. + * dwarf.c (read_and_print_leb128): Pass file and line number to + report_leb_status. + * testsuite/binutils-all/readelf.exp: Add test of new feature. + * testsuite/binutils-all/zero-sec.s: New test source file. + * testsuite/binutils-all/zero-sec.r: Expected output from new + test. + +2020-04-29 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-04-26 Alan Modra + + * readelf.c (get_num_dynamic_syms): Check DT_MIPS_XHASH was + read before dereferencing, and gracefully return. Remove + gnu_hash_error variable. Free gnu hash arrays if number of + syms found is zero. + +2020-04-24 Alan Modra + + * readelf.c (get_num_dynamic_syms): Check for nbuckets and nchains + non-zero. + (process_dynamic_section): Call get_num_dynamic_syms once rather + than in segment loop. Break out of segment loop on a successful + load of dynamic symbols. Formatting. + (process_object): Return error status from process_dynamic_section. + +2020-04-23 Anton Kolesov + + * elf-bfd.h (elfcore_write_arc_v2): Add prototype. + * elf.c (elfcore_grok_arc_v2): New function. + (elfcore_grok_note): Call the new function to handle the corresponding + note. + (elfcore_write_arc_v2): New function. + (elfcore_write_register_note): Call the new function to handle the + corresponding pseudo-sections. + +2020-04-22 Max Filippov + + PR ld/25861 + * readelf.c (is_none_reloc): Recognize + BFD_RELOC_XTENSA_PDIFF{8,16,32} and + BFD_RELOC_XTENSA_NDIFF{8,16,32}. + +2020-04-22 Nick Clifton + + * MAINTAINERS: Remove Chris Faylor as the ix86 PE maintainer. + +2020-04-22 Alan Modra + + * readelf.c (archive_file_offset, archive_file_size, dynamic_addr), + (dynamic_size, dynamic_nent, dynamic_strings, dynamic_strings_length), + (num_dynamic_syms, nbuckets, nchains, buckets, chains), + (ngnubuckets, gnubuckets, gnuchains, mipsxlat, ngnuchains), + (gnusymidx, dynamic_symbols, dynamic_syminfo, dynamic_syminfo_offset), + (dynamic_syminfo_nent, program_interpreter, dynamic_info), + (dynamic_info_DT_GNU_HASH, dynamic_info_DT_MIPS_XHASH, version_info), + (dynamic_section, symtab_shndx_list, group_count, section_groups), + (section_headers_groups): Move to struct filedata. Update use + throughout file. + +2020-04-22 Alan Modra + + * readelf.c (struct dump_data): New, used.. + (cmdline): ..here, and.. + (struct filedata): ..here. Adjust all uses. + (request_dump_bynumber, request_dump, parse_args): Pass in a + struct dump_data* rather than Filedata*. Adjust callers. + (main): Don't set cmdline.file_name. + +2020-04-20 Alan Modra + + * readelf.c (process_symbol_table): Clear ngnuchains, ngnubuckets + and nbuckets. + +2020-04-20 Alan Modra + + * readelf.c (process_section_headers): Free dynamic symbols etc. + earlier. + +2020-04-20 Alan Modra + + * readelf.c (get_num_dynamic_syms): Formatting. Don't return + on error without freeing. + (process_dynamic_section): Don't recreate dynamic symbols from + dynamic tag info when the dynamic symbols have already been + read via section headers. + +2020-04-17 Fredrik Strupe + + * testsuite/binutils-all/arm/vdup-cond.d: New test for testing that + conditional VDUP instructions are disassembled correctly. + * testsuite/binutils-all/arm/vdup-cond.s: New file used by + vdup-cond.d. + * testsuite/binutils-all/arm/vdup-thumb.d: New test for testing + that VDUP instructions (which are conditional in A32) can be + disassembled in thumb mode. + * testsuite/binutils-all/arm/vdup-cond.s: New file used by + vdup-thumb.d. + +2020-04-17 Alan Modra + + PR 25840 + * debug.c (debug_class_type_samep): Don't segfault on NULL type. + +2020-04-16 Alan Modra + + * doc/binutils.texi: Mention --no-show-raw-insn in objdump + --no-addresses description. + +2020-04-15 Alan Modra + + * objdump.c (no_addresses): New static var. + (usage): Print help for --no-addresses. + (long_options): Add --no-addresses entry. + (objdump_print_addr_with_sym, objdump_print_addr): Omit symbol address. + (disassemble_bytes): Don't print current line address, or reloc + address. + * doc/binutils.texi: Document objdump --no-addresses. + +2020-04-15 Alan Modra + + PR 25822 + * readelf.c (get_num_dynamic_syms): Don't set num_of_syms when + reading buckets or chains fails. + +2020-04-15 Alan Modra + + * readelf.c (process_symbol_table): Zero gnubuckets, gnuchains + etc. after freeing. + +2020-04-15 Alan Modra + + * readelf.c (get_group_flags): Translate text. + (get_file_type, get_symbol_binding, get_symbol_type), + (get_ppc64_symbol_other, get_symbol_other): Increase size of buffer. + +2020-04-15 Alan Modra + + PR 25821 + * readelf.c (get_num_dynamic_syms): Typo fix. + +2020-04-14 Alan Modra + + * readelf.c (process_mips_specific): Free eopt and iopt. Avoid + possibility of overflow when checking number of conflicts. + +2020-04-14 H.J. Lu + + PR binutils/25707 + * readelf.c (nbuckets): New. + (nchains): Likewise. + (buckets): Likewise. + (chains): Likewise. + (ngnubuckets): Likewise. + (gnubuckets): Likewise. + (gnuchains): Likewise. + (mipsxlat): Likewise. + (ngnuchains): Likewise. + (gnusymidx): Likewise. + (VALID_SYMBOL_NAME): Likewise. + (VALID_DYNAMIC_NAME): Use it. + (get_dynamic_data): Moved before process_dynamic_section. + (get_num_dynamic_syms): New function. + (process_dynamic_section): Use DT_SYMTAB, DT_SYMENT, DT_HASH, + DT_GNU_HASH and DT_MIPS_XHASH to reconstruct dynamic symbol + table. Use DT_STRTAB and DT_STRSZ to reconstruct dynamic string + table. + (get_symbol_index_type): Don't print "bad section index" when + there is no section header. + (print_dynamic_symbol): Rewrite. + (process_symbol_table): Call print_dynamic_symbol to dump dynamic + symbol table. + +2020-04-02 Rainer Orth + + * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Don't + enable on *-*-solaris*. + +2020-03-30 Nick Clifton + + PR binutils/25662 + * objcopy.c (copy_object): When copying PE format files set the + timestamp field in the pe_data structure if the preserve_dates + flag is set. + * testsuite/binutils-all/objcopy.exp (objcopy_test) Use + --preserve-dates in place of the -p option, in order to make its + effect more obvious. + +2020-03-28 Alan Modra + + * testsuite/binutils-all/objcopy.exp (objcopy_test): Only + clear_xfail hppa*-*-*elf*. Revert mips xfails. + +2020-03-28 Alan Modra + + * testsuite/binutils-all/objcopy.exp (objcopy_test): Move xfails + from here to calls. Remove "m8*-*-*" entry. Don't xfail tic54x + but do xfail spu, mipstx39 and mips-sgi-irix for the executable + test. Pass "-p" to objcopy for the executable test. + +2020-03-27 Jozef Lawrynowicz + + PR binutils/25662 + * testsuite/binutils-all/objcopy.exp (objcopy_test): Add argument to + specify whether an object file or executable should be built and tested. + Change test names to report whether an object file or executable is + being tested. + * testsuite/binutils-all/pr25662.ld: New test. + * testsuite/binutils-all/pr25662.s: New test. + +2020-03-27 Alan Modra + + * readelf.c (process_archive): Don't double free qualified_name. + Don't break out of loop with "negative" archive_file_size, just + set file offset to max. + +2020-03-25 Alan Modra + + * readelf.c (process_archive): Prevent endless loop. + +2020-03-24 H.J. Lu + + PR binutils/25708 + * nm.c (print_symname): Replace _bfd_elf_get_symbol_version_name + with bfd_get_symbol_version_string. + (print_symbo): Pass TRUE to bfd_get_symbol_version_string. + * objdump.c (objdump_print_symname): Likewise. + +2020-03-24 H.J. Lu + + PR binutils/25708 + * nm.c (SYM_NAME): Removed. + (print_symname): Add a pointer to struct extended_symbol_info + argument. Call _bfd_elf_get_symbol_version_name to get symbol + version. + (print_symdef_entry): Pass NULL to print_symname. + (print_symbol_info_bsd): Update call to print_symname. + (print_symbol_info_sysv): Likewise. + (print_symbol_info_posix): Likewise. + +2020-03-24 Alan Modra + + * readelf.c (process_mips_specific): Free iconf on error path. + +2020-03-23 Nick Clifton + + PR 25714 + * wrstabs.c (stab_pop_type): Replace assertion with error return. + * write_stabs_in_sections_debugging_info: Likewise. + * stab_enum_type: Likewise. + * stab_modify_type: Likewise. + * stab_struct_field: Likewise. + * stab_end_struct_type: Likewise. + * stab_start_class_type: Likewise. + * stab_class_static_member: Likewise. + * stab_class_baseclass: Likewise. + * stab_class_start_method: Likewise. + * stab_class_method_var: Likewise. + * stab_class_end_method: Likewise. + * stab_end_class_type: Likewise. + * stab_typedef_type: Likewise. + * stab_start_function: Likewise. + * stab_end_block: Likewise. + * stab_lineno: Likewise. + +2020-03-20 Nick Clifton + + * readelf.c (get_compression_header): Add ATTRIBUTE_WARN_UNUSED_RESULT. + (process_section_headers): Check the return value from + get_compression_header. + (dump_section_as_strings): Likewise. + (dump_section_as_bytes): Likewise. + (load_specific_debug_section): Likewise. + +2020-03-20 H.J. Lu + + * ar.c (main): Update bfd_plugin_set_program_name call. + * nm.c (main): Likewise. + +2020-03-19 Nick Clifton + + PR 25676 + * testsuite/binutils-all/dw4.s: New test source file. + * testsuite/binutils-all/nm.exp: Run the new test. + +2020-03-19 H.J. Lu + + * readelf.c (process_symbol_table): Use unsigned long for si. + +2020-03-19 Alan Modra + + * elfcomm.c: Don't include bfd.h or bucomm.h. + (program_name): Declare. + (process_archive_index_and_symbols): Replace bfd_boolean with int, + and substitute FALSE and TRUE. + (setup_archive, setup_nested_archive): Likewise. + * elfcomm.h: Likewise. + +2020-03-19 Alan Modra + + * readelf.c (process_archive): Always return via path freeing + memory. Formatting. + +2020-03-19 Alan Modra + + * readelf.c (process_netbsd_elf_note): Validate descsz before + accessing descdata. Formatting. + +2020-03-19 Alan Modra + + * elfcomm.c (setup_archive): Make file_size an off_t. Comment. + * elfcomm.h (setup_archive): Update prototype. + +2020-03-16 Alan Modra + + * readelf.c (get_symbols): New function. + (process_relocs, ia64_process_unwind, hppa_process_unwind), + (arm_process_unwind, get_symbol_for_build_attribute): Use it. + +2020-03-16 Alan Modra + + * unwind-ia64.c (unw_decode_uleb128): Prevent overlarge shifts. + Detect shift overflows and check that terminating byte is found. + Print an error on a bad uleb128. + +2020-03-14 Alan Modra + + * readelf.c (process_file): Clean ba_cache. + +2020-03-14 Alan Modra + + * elfcomm.h (setup_archive): Update prototype. + * elfcomm.c (setup_archive): Add file_size parameter and sanity + check longnames_size. + (setup_nested_archive): Get file size and pass to setup_archive. + * elfedit.c (process_archive): Likewise. + * readelf.c (process_archive): Pass filedata->file_size to + setup_archive. + +2020-03-14 Alan Modra + + * readelf.c (dump_section_as_strings): Free memory on error exit. + (dump_section_as_bytes, process_notes_at): Likewise. + (get_build_id): Free enote. + +2020-03-13 Kamil Rytarowski + + * readelf.c (get_netbsd_elfcore_note_type): Add support for + NT_NETBSDCORE_LWPSTATUS notes. + +2020-03-13 Alan Modra + + * elfcomm.c (get_archive_member_name): Always return malloc'd + string or NULL. + * elfedit.c (process_archive): Tidy memory on all return paths. + * readelf.c (process_archive): Likewise. + (process_symbol_table): Likewise. + (ba_cache): New, replacing .. + (get_symbol_for_build_attribute): ..static vars here. Free + strtab and symtab before loading new ones. Reject symtab without + valid strtab in loop, breaking out of loop on valid symtab. + (process_file): Free ba_cache symtab and strtab here, resetting + ba_cache. + +2020-03-12 Alan Modra + + * readelf.c (process_section_headers): Don't just set + filedata->section_headers NULL, free it first. Similarly for + dynamic_symbols, dynamic_strings, dynamic_syminfo and + symtab_shndx_list. Zero associated counts too. + (process_object): Free symtab_shndx_list. + (process_file): Free various allocated filedata tables. + +2020-03-11 Nick Clifton + + PR 25611 + PR 25614 + * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and + li_segment_size fields. + * dwarf.c (read_debug_line_header): Record the address size and + segment selector size values (if present) in the lineinfo + structure. + (display_formatted_table): Warn if the format count is empty but + the table itself is not empty. + Display the format count and entry count at the start of the table + dump. + (display_debug_lines_raw): Display the address size and segement + selector size fields, if present. + * testsuite/binutils-all/dw5.W: Update expected output. + +2020-03-11 Alan Modra + + PR 25651 + * objcopy.c (copy_object): Test "gaps" not gap_fill_set or + pad_to_set on second block of code dealing with padding. + Replace "c" with "num_sec" and don't recalculate number of + sections on second block. Size arrays using sizeof (element) + rather than sizeof (element type). + +2020-03-10 Alan Modra + + * objdump.c (disassemble_section): Don't call qsort unless + sym count is at least two. + (disassemble_data): Don't call memcpy with NULL src. + +2020-03-09 Alan Modra + + PR 25645 + * readelf.c (dump_ia64_vms_dynamic_fixups): Pass size and nmemb + to get_data rather than multiplying. + (dump_ia64_vms_dynamic_relocs): Likewise. + (process_version_sections): Correct order of size and nmemb args + in get_data call. + (process_mips_specific): Likewise. + +2020-03-08 H.J. Lu + + * readelf.c (get_dynamic_data): Replace "memory chekers" with + "memory checkers" in comments. + +2020-03-06 Simon Marchi + + PR 25491 + * doc/Makefile.am: Rename MOSTLYCLEANFILES to MAINTAINERCLEANFILES. + * doc/Makefile.in: Re-generate. + +2020-03-06 Nick Clifton + + * objcopy.c (check_new_section_flags): New function. Reject the + SEC_COFF_SHARED flag if the target is not a COFF binary. + (copy_object): Call check_new_section_flags. + (setup_section): Likewise. + * doc/binutils.texi (objcopy): Add a note that the 'share' section + flag cannot be applied to ELF binaries. + +2020-03-06 Alan Modra + + PR 25637 + * objcopy.c (filter_symbols): Correct rem_leading_char logic. + +2020-03-05 Alan Modra + + PR 25629 + * objcopy.c (filter_symbols): Don't segfault on NULL + prefix_symbols_string. + +2020-03-04 Christian Eggers + + * objcopy.c (copy_object): Convert from bytes to octets for + --gap-fill and --pad-to. + +2020-03-03 Nick Clifton + + PR 25625 + * prdbg.c (pr_tag_type): Remove call to abort. + +2020-03-02 Aaron Merey + + * binutils/testsuite/binutils-all/debuginfod.exp: Improve port + selection. + +2020-03-02 Nick Clifton + + PR 25543 + * readelf.c (dump_section_as_strings): Display new-line characters + as \n and then insert a line break. + * testsuite/binutils-all/pr25543.s: New test. + * testsuite/binutils-all/pr25543.d: Test driver. + * testsuite/binutils-all/readelf.exp: Run the new test. + +2020-02-27 Nick Clifton + + PR 25526 + * readelf.c (process_ia64_vms_dynamic_relocs): Check to see if + get_data is unable to load the string table. + +2020-02-26 Alan Modra + + * elfedit.c: Indent labels correctly. + * readelf.c: Likewise. + * resres.c: Likewise. + +2020-02-25 H.J. Lu + + PR binutils/25584 + * ar.c (main): Pass 0 to bfd_plugin_set_program_name. + * nm.c (main): Pass 1 to bfd_plugin_set_program_name. + +2020-02-24 Nick Clifton + + PR 25499 + * doc/binutils.texi (objdump): Fix typo in description of + objdump's -g option. + +2020-02-20 Nelson Chu + + * dwarf.c (regname_internal_riscv): Updated since the DECLARE_CSR + is changed. + +2020-02-19 Jordan Rupprecht + + * objdump.c (show_line): call bfd_demangle when using do_demangle. + +2020-02-19 Andrew Burgess + + * configure: Regenerate. + +2020-02-10 Fangrui Song + + * objcopy.c (parse_flags): Handle "exclude". + * doc/binutils.texi: Document the support. + +2020-02-10 Aaron Merey + + * binutils/testsuite/binutils-all/debuginfod.exp: + Replace set ::env with setenv. + Start server before setting environment variable. + Specify tmpdir as the location of the server's + database. + Check additional server metrics at start-up. + +2020-02-07 Nick Clifton + + * README-how-to-make-a-release: Add note about updating the + GAS/NEWS URL in the next release. + +2020-02-07 Sergey Belyashov + + PR 25469 + * readelf.c (get_machine_flags): Add support for Z80N machine + number. + +2020-02-07 Nick Clifton + + * dwarf.c (display_debug_lines_decoded): Force a NUL termination + of the truncated file name. + +2020-02-06 Andrew Burgess + + * objdump.c (print_jump_visualisation): New function. + (disassemble_bytes): Call new function. + +2020-02-06 Alan Modra + + * testsuite/lib/binutils-common.exp (match_target): Accept '!' before + TCL procedure. + (supports_gnu_osabi): New procedure. + (is_generic): New, from ld-lib.exp. + (supports_gnu_unique): Use the above. + +2020-02-04 Alan Modra + + * Makefile.am (CFILES): Add od-elf32_avr.c. + * Makefile.in: Regenerate. + * po/POTFILES.in: Regenerate. + +2020-02-03 Andreas Schwab + + * readelf.c (dump_relocations, dump_relocations) + (decode_arm_unwind_bytecode, process_dynamic_section) + (get_symbol_visibility, get_alpha_symbol_other): Add newline to + error message. + +2020-02-03 Sergei Trofimovich + + * coffdump.c (program_name): Drop redundant definition. + * srconv.c (program_name): Likewise + * sysdump.c (program_name): Likewise + +2020-02-02 H.J. Lu + + PR gas/25380 + * objdump.c (sym_ok): Return FALSE if 2 sections are in the + same file with different section pointers. + +2020-02-01 Nick Clifton + + * README-how-to-make-a-release: Update with more details on the + release making process. + +2020-01-31 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2020-01-28 Nick Clifton + + * readelf.c (get_build_id): Simplify warning message about corrupt + notes encountered whilst scanning for the build-id. + +2020-01-27 Roland McGrath + + * objcopy.c (compare_gnu_build_notes): Fix comparison results + for overlapping ranges so that (A == B) == (B == A) holds. + +2020-01-27 Alan Modra + + * testsuite/lib/binutils-common.exp (big_or_little_endian): Replace + case statement with switch statement. + +2020-01-24 Nick Clifton + + * readelf.c (get_build_id): Fix warning messages about corrupt + notes. + +2020-01-23 Nick Clifton + + * po/fr.po: Updated French translation. + +2020-01-22 Yuri Chornoivan + + PR 25417 + * readelf.c (get_alpha_symbol_other): Fix error message typo. + +2020-01-20 Nick Clifton + + * po/pt.po: Updated Portuguese translation. + * po/uk.po: Updated Ukranian translation. + +2020-01-18 Nick Clifton + + * README-how-to-make-a-release: Update notes on how to cut a + branch for a release. + +2020-01-18 Nick Clifton + + * configure: Regenerate. + * po/binutils.pot: Regenerate. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-17 Thomas Troeger + + * objdump.c (jump_info_visualize_address): Discard jumps that are + no longer needed. + (disassemble_bytes): Only compute the maximum level if jumps were + detected. + +2020-01-13 Nick Clifton + + * objdump.c (disassemble_bytes): Remove C99-ism. + * testsuite/binutils-all/debuginfod.exp: New tests. + +2020-01-13 Thomas Troeger + + * objdump.c (visualize_jumps, color_output, extended_color_output) + (detected_jumps): New variables. + (usage): Add the new jump visualization options. + (option_values): Add new option value. + (long_options): Add the new option. + (jump_info_new, jump_info_free): New functions. + (jump_info_min_address, jump_info_max_address): Likewise. + (jump_info_end_address, jump_info_is_start_address): Likewise. + (jump_info_is_end_address, jump_info_size): Likewise. + (jump_info_unlink, jump_info_insert): Likewise. + (jump_info_add_front, jump_info_move_linked): Likewise. + (jump_info_intersect, jump_info_merge): Likewise. + (jump_info_sort, jump_info_visualize_address): Likewise. + (disassemble_jumps): New function - used to locate jumps. + (disassemble_bytes): Add ascii art generation. + (disassemble_section): Add scan to locate jumps. + (main): Parse the new visualization option. + * doc/binutils.texi: Document the new feature. + * NEWS: Mention the new feature. + +2020-01-13 Alan Modra + + PR 25360 + PR 25361 + * dwarf.c (display_debug_frames): Move fde_fc earlier. Free + fde_fc col_type and col_offset. + * readelf.c (apply_relocations): Move symsec check earlier. + (free_debug_section): Free reloc_info. + (process_notes_at): Free pnotes on error path. + (process_object): Free dump_sects here.. + (process_archive): ..not here. + +2020-01-13 Alan Modra + + PR 25362 + * nm.c (display_rel_file): Free dyn_syms. + +2020-01-09 Nick Clifton + + PR 25220 + * objcopy.c (empty_name): New variable. + (need_sym_before): Prevent an attempt to free a static variable. + (filter_symbols): Avoid strcmp test by checking for pointer + equality. + +2020-01-09 Nick Clifton + + * po/zh_TW.po: Updated Traditional Chinese translation. + +2020-01-09 Aaron Merey + + * Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod. + * Makefile.in: Regenerate. + * NEWS: Update. + * config.in: Regenerate. + * configure: Regenerate. + * configure.ac: Call AC_DEBUGINFOD. + * doc/Makefile.in: Regenerate. + * doc/binutils.texi: Add section on using binutils + with debuginfod. + * dwarf.c (debuginfod_fetch_separate_debug_info): New function. + Query debuginfod servers for the target debug file. + (load_separate_debug_info): Call + debuginfod_fetch_separate_debug_info if configured with + debuginfod. + (load_separate_debug_files): Add file argument to + load_separate_debug_info calls. + * dwarf.h (get_build_id): Add declaration. + * objdump.c (get_build_id): New function. Get build-id of file. + * readelf.c (get_build_id): Likewise. + * testsuite/binutils-all/debuginfod.exp: New tests. + * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id + section. + +2020-01-02 Sergey Belyashov + + * readelf.c: Add support for new Z*) relocations and machine + types. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2019 + +Copyright (C) 2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/elfcpp/ChangeLog b/elfcpp/ChangeLog index 0ae886e1780..cf5fd0bb4c2 100644 --- a/elfcpp/ChangeLog +++ b/elfcpp/ChangeLog @@ -1,88 +1,6 @@ -2020-12-15 Cary Coutant - - * elfcpp.h (class Ehdr): Add get_ei_osabi and get_ei_abiversion methods. - -2020-12-15 Vivek Das Mohapatra - - * elfcpp.h (enum DT): New enum member DT_GNU_FLAGS_1. - (enum DF_GNU_1): New enum DF_GNU_1 containing DF_GNU_1_UNIQUE. - -2020-12-14 H.J. Lu - Cary Coutant - - PR gold/27039 - * elfcpp.h (SHF): Add SHF_GNU_RETAIN. - -2020-10-13 H.J. Lu - - * elfcpp.h (GNU_PROPERTY_X86_ISA_1_USED): Renamed to ... - (GNU_PROPERTY_X86_COMPAT_ISA_1_USED): This. - (GNU_PROPERTY_X86_ISA_1_NEEDED): Renamed to ... - (GNU_PROPERTY_X86_COMPAT_ISA_1_NEEDED): This. - (GNU_PROPERTY_X86_UINT32_AND_LO): New. - (GNU_PROPERTY_X86_UINT32_AND_HI): Likewise. - (GNU_PROPERTY_X86_UINT32_OR_LO): Likewise. - (GNU_PROPERTY_X86_UINT32_OR_HI): Likewise. - (GNU_PROPERTY_X86_UINT32_OR_AND_LO): Likewise. - (GNU_PROPERTY_X86_UINT32_OR_AND_HI): Likewise. - (GNU_PROPERTY_X86_COMPAT_2_ISA_1_NEEDED): New. - (GNU_PROPERTY_X86_COMPAT_2_ISA_1_NEEDED): Likewise. - (GNU_PROPERTY_X86_FEATURE_1_AND): Updated to - (GNU_PROPERTY_X86_UINT32_AND_LO + 0). - (GNU_PROPERTY_X86_ISA_1_NEEDED): New. Defined to - GNU_PROPERTY_X86_UINT32_OR_LO + 2. - (GNU_PROPERTY_X86_FEATURE_2_NEEDED): New. Defined to - (GNU_PROPERTY_X86_UINT32_OR_LO + 1). - (GNU_PROPERTY_X86_ISA_1_USED): New. Defined to - GNU_PROPERTY_X86_UINT32_OR_AND_LO + 2. - (GNU_PROPERTY_X86_FEATURE_2_USED): New. Defined to - (GNU_PROPERTY_X86_UINT32_OR_AND_LO + 1). - -2020-09-25 Alan Modra - - * dwarf.h (DW_FIRST_UT, DW_UT, DW_END_UT): Define. - -2020-08-26 Cooper Qu - - * elfcpp.h (enum SHT): New enum SHT_CSKY_ATTRIBUTES. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-06-26 Nick Alcock - - * elfcpp_swap.h (bswap_16): Do not assume that presence of - means this is declared. Make static inline, matching - recent change to libctf, since there is no non-inline definition - of these functions. - (bswap_32): Likewise. - (bswap_64): Likewise. - -2020-06-18 Fangrui Song - - PR gold/26039 - * elfcpp.h (enum DF_1): New enum member DF_1_PIE. - -2020-06-06 Alan Modra - - * powerpc.h: Rename - R_PPC64_GOT_TLSGD34 to R_PPC64_GOT_TLSGD_PCREL34, - R_PPC64_GOT_TLSLD34 to R_PPC64_GOT_TLSLD_PCREL34, - R_PPC64_GOT_TPREL34 to R_PPC64_GOT_TPREL_PCREL34, and - R_PPC64_GOT_DTPREL34 to R_PPC64_GOT_DTPREL_PCREL34. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2019 +For older changes see ChangeLog-2020 -Copyright (C) 2020 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/elfcpp/ChangeLog-2020 b/elfcpp/ChangeLog-2020 new file mode 100644 index 00000000000..0ae886e1780 --- /dev/null +++ b/elfcpp/ChangeLog-2020 @@ -0,0 +1,96 @@ +2020-12-15 Cary Coutant + + * elfcpp.h (class Ehdr): Add get_ei_osabi and get_ei_abiversion methods. + +2020-12-15 Vivek Das Mohapatra + + * elfcpp.h (enum DT): New enum member DT_GNU_FLAGS_1. + (enum DF_GNU_1): New enum DF_GNU_1 containing DF_GNU_1_UNIQUE. + +2020-12-14 H.J. Lu + Cary Coutant + + PR gold/27039 + * elfcpp.h (SHF): Add SHF_GNU_RETAIN. + +2020-10-13 H.J. Lu + + * elfcpp.h (GNU_PROPERTY_X86_ISA_1_USED): Renamed to ... + (GNU_PROPERTY_X86_COMPAT_ISA_1_USED): This. + (GNU_PROPERTY_X86_ISA_1_NEEDED): Renamed to ... + (GNU_PROPERTY_X86_COMPAT_ISA_1_NEEDED): This. + (GNU_PROPERTY_X86_UINT32_AND_LO): New. + (GNU_PROPERTY_X86_UINT32_AND_HI): Likewise. + (GNU_PROPERTY_X86_UINT32_OR_LO): Likewise. + (GNU_PROPERTY_X86_UINT32_OR_HI): Likewise. + (GNU_PROPERTY_X86_UINT32_OR_AND_LO): Likewise. + (GNU_PROPERTY_X86_UINT32_OR_AND_HI): Likewise. + (GNU_PROPERTY_X86_COMPAT_2_ISA_1_NEEDED): New. + (GNU_PROPERTY_X86_COMPAT_2_ISA_1_NEEDED): Likewise. + (GNU_PROPERTY_X86_FEATURE_1_AND): Updated to + (GNU_PROPERTY_X86_UINT32_AND_LO + 0). + (GNU_PROPERTY_X86_ISA_1_NEEDED): New. Defined to + GNU_PROPERTY_X86_UINT32_OR_LO + 2. + (GNU_PROPERTY_X86_FEATURE_2_NEEDED): New. Defined to + (GNU_PROPERTY_X86_UINT32_OR_LO + 1). + (GNU_PROPERTY_X86_ISA_1_USED): New. Defined to + GNU_PROPERTY_X86_UINT32_OR_AND_LO + 2. + (GNU_PROPERTY_X86_FEATURE_2_USED): New. Defined to + (GNU_PROPERTY_X86_UINT32_OR_AND_LO + 1). + +2020-09-25 Alan Modra + + * dwarf.h (DW_FIRST_UT, DW_UT, DW_END_UT): Define. + +2020-08-26 Cooper Qu + + * elfcpp.h (enum SHT): New enum SHT_CSKY_ATTRIBUTES. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-06-26 Nick Alcock + + * elfcpp_swap.h (bswap_16): Do not assume that presence of + means this is declared. Make static inline, matching + recent change to libctf, since there is no non-inline definition + of these functions. + (bswap_32): Likewise. + (bswap_64): Likewise. + +2020-06-18 Fangrui Song + + PR gold/26039 + * elfcpp.h (enum DF_1): New enum member DF_1_PIE. + +2020-06-06 Alan Modra + + * powerpc.h: Rename + R_PPC64_GOT_TLSGD34 to R_PPC64_GOT_TLSGD_PCREL34, + R_PPC64_GOT_TLSLD34 to R_PPC64_GOT_TLSLD_PCREL34, + R_PPC64_GOT_TPREL34 to R_PPC64_GOT_TPREL_PCREL34, and + R_PPC64_GOT_DTPREL34 to R_PPC64_GOT_DTPREL_PCREL34. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2019 + +Copyright (C) 2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/gas/ChangeLog b/gas/ChangeLog index b5a352f5736..d1f6a868d86 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -2,6114 +2,9 @@ * config/tc-mmix.h (md_single_noop_insn): Change to "swym 0". -2020-12-18 Alan Modra - - * ecoff.c (ecoff_frob_symbol): Rename scom_section to - ecoff_scom_section, move to file scope and statically initialise. - -2020-12-16 Alan Modra - - * config/obj-elf.c (obj_elf_section): Don't set elf_osabi here. - (obj_elf_type): Likewise. - -2020-12-15 Alan Modra - - PR 27071 - * config/obj-elf.c (elf_obj_symbol_clone_hook): New function. - (elf_format_ops): Set symbol_clone_hook. - * config/obj-elf.h (elf_obj_symbol_clone_hook): Declare. - (obj_symbol_clone_hook): Define. - * listing.c (buffer_line): Avoid integer overflow on paper_width - set to zero. - -2020-12-14 Alan Modra - - * testsuite/gas/elf/section27.s: Reorder .text, .data and .bss - so that output section order does not depend on those sections - being already created. Use ".section .text" rather than ".text". - -2020-12-13 Borislav Petkov - - * testsuite/gas/i386/align-branch-9.s: Don't use labels that are - automatically local for ELF targets. - * testsuite/gas/i386/branch.s: Likewise. - * testsuite/gas/i386/x86-64-align-branch-9.s: Likewise. - * testsuite/gas/i386/x86-64-branch.s: Likewise. - * testsuite/gas/i386/align-branch-9.d: Adjust to match more targets. - * testsuite/gas/i386/branch.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-branch.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-9.d: Likewise. - * testsuite/gas/i386/x86-64-branch.d: Likewise. - -2020-12-11 Sergey Belyashov - Nick Clifton - - PR 27047 - * config/tc-z80.c (s_bss): New function. - (md_pseudo_table): Add bss entry. - -2020-12-10 Nelson Chu - - * config/tc-riscv.c (riscv_ext): New function. Use md_assemblef - to expand the zext and sext pseudos, to give them a chance to be - expanded into c-ext instructions. - (macro): Handle M_ZEXTH, M_ZEXTW, M_SEXTB and M_SEXTH. - * testsuite/gas/riscv/ext.s: New testcase. - * testsuite/gas/riscv/ext-32.d: Likewise. - * testsuite/gas/riscv/ext-64.d: Likewise. - -2020-12-10 Nelson Chu - - * config/tc-riscv.c (riscv_multi_subset_supports): Handle INSN_CLASS_ZICSR - and INSN_CLASS_ZIFENCEI. - * testsuite/gas/riscv/march-imply-i.s: New testcase. - * testsuite/gas/riscv/march-imply-i2p0-01.d: New testcase. The version - of i is less than 2.1, and zi* are supported in the chosen spec, so - enable the fence.i and csr instructions, also output the implicit zi* to - the arch string. - * testsuite/gas/riscv/march-imply-i2p0-02.d: Likewise, but the zi* are - not supported in the spec 2.2. Enable the related instructions since - i's version is less than 2.1, but do not output them. - * testsuite/gas/riscv/march-imply-i2p1-01.d: New testcase. The version - of i is 2.1, so don't add it's implicit zi*, and disable the related - instructions. - * testsuite/gas/riscv/march-imply-i2p1-01.l: Likewise. - * testsuite/gas/riscv/march-imply-i2p1-02.d: Likewise, and set the zi* - explicitly, so enable the related instructions. - * testsuite/gas/riscv/march-imply-i2p0.d: Removed. - * testsuite/gas/riscv/march-imply-i2p1.d: Removed. - -2020-12-08 H.J. Lu - - * config/obj-elf.c (SEC_ASSEMBLER_SHF_MASK): New. - (get_section_by_match): Also check if SEC_ASSEMBLER_SHF_MASK of - sh_flags matches. Rename info to sh_info. - (obj_elf_change_section): Don't check previous SHF_GNU_RETAIN. - Rename info to sh_info. - (obj_elf_section): Rename info to sh_info. Set sh_flags for - SHF_GNU_RETAIN. - * config/obj-elf.h (elf_section_match): Rename info to sh_info. - Add sh_flags. - * testsuite/gas/elf/elf.exp: Run section27. - * testsuite/gas/elf/section24b.d: Updated. - * testsuite/gas/elf/section27.d: New file. - * testsuite/gas/elf/section27.s: Likewise. - -2020-12-04 Andreas Krebbel - - * testsuite/gas/s390/zarch-z10.s: Add tests for risbgz. - * testsuite/gas/s390/zarch-z10.d: Add regexp for risbgz. - * testsuite/gas/s390/zarch-zEC12.s: Add tests for risbgnz. - * testsuite/gas/s390/zarch-zEC12.d: Add regexp for risbgnz. - -2020-12-03 Andreas Krebbel - - * testsuite/gas/s390/esa-g5.s: Test new extended mnemonics. - * testsuite/gas/s390/esa-g5.d: Likewise. - * testsuite/gas/s390/esa-z900.s: Likewise. - * testsuite/gas/s390/esa-z900.d: Likewise. - * testsuite/gas/s390/zarch-z900.s: Likewise. - * testsuite/gas/s390/zarch-z900.d: Likewise. - -2020-12-01 Nelson Chu - - * testsuite/gas/riscv/attribute-10.d: Updated. - * testsuite/gas/riscv/march-imply-g.d: New testcase for g. - * testsuite/gas/riscv/march-imply-unsupported.d: The zicsr and zifencei - are not supported in the ISA spec v2.2, so don't add and output them. - -2020-12-01 Nelson Chu - - * config/tc-riscv.c (riscv_subset_supports): Updated. - * testsuite/gas/riscv/march-imply-i2p0.d: New testcase. Need to - add the implicit zicsr and zifencei when i's version less than 2.1. - * testsuite/gas/riscv/march-imply-i2p1.d: New testcase. - * testsuite/gas/riscv/march-imply-d.d: Likewise. - * testsuite/gas/riscv/march-imply-f.d: Likewise. - * testsuite/gas/riscv/march-imply-q.d: Likewise. - * testsuite/gas/riscv/march-fail-rv32iq.l: Updated. - * testsuite/gas/riscv/march-fail-rv32id.d: Removed. - * testsuite/gas/riscv/march-fail-rv32id.l: Likewise. - * testsuite/gas/riscv/march-fail-rv64iq.d: Likewise. - * testsuite/gas/riscv/march-fail-rv64iq.l: Likewise. - -2020-12-01 Nelson Chu - - * config/tc-riscv.c (riscv_get_default_ext_version): - Change the version type from unsigned to int. - (riscv_set_arch): Use as_bad rather than as_fatal to - report more errors. - * testsuite/gas/riscv/attribute-02.d: Updated since x must be - set with versions. - * testsuite/gas/riscv/attribute-03.d: Likewise. - * testsuite/gas/riscv/march-ok-two-nse.d: Likewise. - * testsuite/gas/riscv/attribute-09.d: zicsr wasn't supported - in the spec 2.2, so choose the newer spec. - * testsuite/gas/riscv/march-fail-base-01.l: Updated since as_bad. - * testsuite/gas/riscv/march-fail-base-02.l: Likewise. - * testsuite/gas/riscv/march-fail-order-std.l: Likewise. - * testsuite/gas/riscv/march-fail-order-x.l: Likewise. - * testsuite/gas/riscv/march-fail-order-z.l: Likewise. - * testsuite/gas/riscv/march-fail-porder.l: Likewise. - * testsuite/gas/riscv/march-fail-rv32ef.l: Likewise. - * testsuite/gas/riscv/march-fail-rv32id.l: Likewise. - * testsuite/gas/riscv/march-fail-rv32iq.l: Likewise. - * testsuite/gas/riscv/march-fail-rv64iq.l: Likewise. - * testsuite/gas/riscv/march-fail-single-char.l: Likewise. - * testsuite/gas/riscv/march-fail-unknown-std.l: Likewise. - * testsuite/gas/riscv/march-fail-unknown.l: Likewise. - * testsuite/gas/riscv/march-fail-uppercase.l: Likewise. - * testsuite/gas/riscv/march-fail-version.l: Likewise. - * testsuite/gas/riscv/march-fail-isa-spec.d: Likewise. - * testsuite/gas/riscv/march-fail-isa-spec.l: Likewise. - -2020-12-01 Nelson Chu - - * testsuite/gas/riscv/march-fail-order-z.d: New testcase, check - orders of prefixed z extensions. - * testsuite/gas/riscv/march-fail-order-z.l: Likewise. - * testsuite/gas/riscv/march-fail-single-char-h.d: New testcase. - * testsuite/gas/riscv/march-fail-single-char.l: Updated. - * testsuite/gas/riscv/march-fail-unknown-h.d: New testcase. - * testsuite/gas/riscv/march-fail-unknown.l: Updated. - -2020-12-01 Nelson Chu - - * testsuite/gas/riscv/march-fail-uppercase-base.d: Updated. - * testsuite/gas/riscv/march-fail-uppercase.l: Updated. - * testsuite/gas/riscv/march-fail-uppercase-x.d: New testcase. - -2020-12-01 Nelson Chu - - (These are new testcases that cover more cases) - * testsuite/gas/riscv/march-fail-base-01.d: The first extension must - be e, i or g. - * testsuite/gas/riscv/march-fail-base-01.l: Likewise. - * testsuite/gas/riscv/march-fail-base-02.d: rv64e is an invalid base ISA. - * testsuite/gas/riscv/march-fail-base-02.l: Likewise. - * testsuite/gas/riscv/march-fail-order-std.d: Check orders of standard - extensions. - * testsuite/gas/riscv/march-fail-order-std.l: Likewise. - * testsuite/gas/riscv/march-fail-order-x.d: Check orders of prefixed - x extensions. - * testsuite/gas/riscv/march-fail-order-x.l: Likewise. - * testsuite/gas/riscv/march-fail-porder-x-std.d: Check orders when - standard and prefixed extensions are set at the same time. - * testsuite/gas/riscv/march-fail-porder-x-z.d: Likewise. - * testsuite/gas/riscv/march-fail-porder-z-std.d: Likewise. - * testsuite/gas/riscv/march-fail-porder.l: Likewise. - * testsuite/gas/riscv/march-fail-single-char-s.d: Only standard - extensions can use single char. - * testsuite/gas/riscv/march-fail-single-char-x.d: Likewise. - * testsuite/gas/riscv/march-fail-single-char-z.d: Likewise. - * testsuite/gas/riscv/march-fail-single-char.l: Likewise. - * testsuite/gas/riscv/march-fail-unknown-s.d: All extensions - should be known, except the non-standard x extensions. - * testsuite/gas/riscv/march-fail-unknown-std.d: Likewise. - * testsuite/gas/riscv/march-fail-unknown-std.l: Likewise. - * testsuite/gas/riscv/march-fail-unknown-z.d: Likewise. - * testsuite/gas/riscv/march-fail-unknown.l: Likewise. - * testsuite/gas/riscv/march-fail-uppercase-base.d: Do not - allow any uppercase in the arch string. - * testsuite/gas/riscv/march-fail-uppercase-std.d: Likewise. - * testsuite/gas/riscv/march-fail-uppercase-z.d: Likewise. - * testsuite/gas/riscv/march-fail-uppercase.l: Likewise. - * testsuite/gas/riscv/march-fail-version-x.d: Failed to set versions. - * testsuite/gas/riscv/march-fail-version-z.d: Likewise. - * testsuite/gas/riscv/march-fail-version.l: Likewise. - * testsuite/gas/riscv/march-fail-rv32ef.l: Updated. - * testsuite/gas/riscv/march-fail-rv32id.d: Need f-ext. - * testsuite/gas/riscv/march-fail-rv32iq.d: Should be rv64. - * testsuite/gas/riscv/march-fail-rv32iq.l: Likewise. - * testsuite/gas/riscv/march-fail-rv64iq.d: Need d-ext and f-ext. - * testsuite/gas/riscv/march-fail-rv64iq.l: Likewise. - - (The following testcases are removed and covered by new testcases) - * testsuite/gas/riscv/march-fail-rv32i.d: march-fail-uppercase-base. - * testsuite/gas/riscv/march-fail-rv32i.l: Likewise. - * testsuite/gas/riscv/march-fail-rv32iam.d: march-fail-order-std. - * testsuite/gas/riscv/march-fail-rv32iam.l: Likewise. - * testsuite/gas/riscv/march-fail-rv32ic.d: march-fail-uppercase-std. - * testsuite/gas/riscv/march-fail-rv32ic.l: Likewise. - * testsuite/gas/riscv/march-fail-rv32icx2p.d: march-fail-version-x. - * testsuite/gas/riscv/march-fail-rv32icx2p.l: Likewise. - * testsuite/gas/riscv/march-fail-rv32imc.d: march-fail-order-std. - * testsuite/gas/riscv/march-fail-rv32imc.l: Likewise. - * testsuite/gas/riscv/march-fail-rv64I.d: march-fail-uppercase-std. - * testsuite/gas/riscv/march-fail-rv64I.l: Likewise. - * testsuite/gas/riscv/march-fail-rv64e.d: march-fail-base-02. - * testsuite/gas/riscv/march-fail-rv64e.l: Likewise. - * testsuite/gas/riscv/march-fail-s-with-version.d: march-fail-unknown-s. - * testsuite/gas/riscv/march-fail-s-with-version.l: Likewise. - * testsuite/gas/riscv/march-fail-s.d: march-fail-unknown-s. - * testsuite/gas/riscv/march-fail-s.l: Likewise. - * testsuite/gas/riscv/march-fail-sx.d: march-fail-unknown-s. - * testsuite/gas/riscv/march-fail-sx.l: Likewise. - -2002-11-29 Borislav Petkov - - * testsuite/gas/i386/branch.d: Add new branch insns test. - * testsuite/gas/i386/branch.s: Likewise. - * testsuite/gas/i386/i386.exp: Insert the new branch test. - * testsuite/gas/i386/x86-64-branch.d: Test for branch hints insns. - * testsuite/gas/i386/x86-64-branch.s: Likewise. - * testsuite/gas/i386/ilp32/x86-64-branch.d: Likewise. - -2020-11-27 Jozef Lawrynowicz - - * testsuite/gas/elf/elf.exp: Run new tests. - * testsuite/gas/elf/section25.d: New test. - * testsuite/gas/elf/section25.s: New test. - * testsuite/gas/elf/section26.d: New test. - * testsuite/gas/elf/section26.s: New test. - -2020-11-25 Alan Modra - - * output-file.c (output_file_close): Remove "can't close" from - error message. - * testsuite/gas/mips/reginfo-2.l: Update expected output. - -2020-11-04 Przemyslaw Wirkus - - * config/tc-aarch64.c (aarch64_cpus): Add Cortex-A78C. - * doc/c-aarch64.texi: Document -mcpu=cortex-a78c. - * doc/NEWS: Update news. - -2020-11-19 Jozef Lawrynowicz - - * testsuite/gas/elf/section22.d: Allow FreeBSD OSABI in readelf - output. - * testsuite/gas/elf/section23a.d: Likewise. - * testsuite/gas/elf/section24a.d: Likewise. - -2020-11-18 Alan Modra - - * doc/as.texi (.nop): Document optional size arg. - * dwarf2dbg.c (dwarf2_gen_line_info_1): Only check SEC_ALLOC - when ELF. Warn whenever dwarf line number information is ignored. - * frags.c (frag_offset_ignore_align_p): New function. - * frags.h (frag_offset_ignore_align_p): Declare. - * read.c (s_nop): Extend to support optional size arg. - * testsuite/gas/elf/dwarf2-20.d: Expect warnings, and exact range. - * testsuite/gas/elf/dwarf2-20.s: Emit 16 bytes worth of nops. - * testsuite/gas/m68hc11/indexed12.d: Expect warnings. - -2020-11-18 Jozef Lawrynowicz - H.J. Lu - - * NEWS: Announce SHF_GNU_RETAIN support. - * config/obj-elf.c (obj_elf_change_section): Merge SHF_GNU_RETAIN bit - between section declarations. - (obj_elf_parse_section_letters): Handle 'R' flag. - Handle numeric flag values within the SHF_MASKOS range. - (obj_elf_section): Validate SHF_GNU_RETAIN usage. - * doc/as.texi: Document 'R' flag to .section directive. - * testsuite/gas/elf/elf.exp: Run new tests. - * testsuite/gas/elf/section10.d: Unset SHF_GNU_RETAIN bit. - * testsuite/gas/elf/section10.s: Likewise. - * testsuite/gas/elf/section22.d: New test. - * testsuite/gas/elf/section22.s: New test. - * testsuite/gas/elf/section23.s: New test. - * testsuite/gas/elf/section23a.d: New test. - * testsuite/gas/elf/section23b.d: New test. - * testsuite/gas/elf/section23b.err: New test. - * testsuite/gas/elf/section24.s: New test. - * testsuite/gas/elf/section24a.d: New test. - * testsuite/gas/elf/section24b.d: New test. - -2020-11-13 Przemyslaw Wirkus - - * NEWS: Update news. - * config/tc-aarch64.c: Add option +pauth to -march. - * doc/c-aarch64.texi: Update docs. - * testsuite/gas/aarch64/pac-feat.d: New test. - * testsuite/gas/aarch64/pac-feat.s: New test. - -2020-11-16 Przemyslaw Wirkus - - * NEWS: Update news. - * config/tc-aarch64.c: New feature flag +flagm. - * doc/c-aarch64.texi: Update docs. - * testsuite/gas/aarch64/flagm.d: New test. - * testsuite/gas/aarch64/flagm.s: New test. - -2020-11-16 Przemyslaw Wirkus - - * config/tc-arm.c (arm_cpus): Add Cortex-A78C. - * doc/c-arm.texi: Document -mcpu=cortex-a78c. - * testsuite/gas/arm/cpu-cortex-a78c.d: New test. - -2020-11-14 Borislav Petkov - - * testsuite/gas/i386/x86-64-segovr.d: Adjust regexes. - * testsuite/gas/i386/x86-64-nops.d: Likewise. - * testsuite/gas/i386/x86-64-nops-1.d: Likewise. - * testsuite/gas/i386/x86-64-nops-1-g64.d: Likewise. - * testsuite/gas/i386/x86-64-nops-1-core2.d: Likewise. - * testsuite/gas/i386/x86-64-nops-1-k8.d: Likewise. - * testsuite/gas/i386/x86-64-nops-2.d: Likewise. - * testsuite/gas/i386/x86-64-nops-3.d: Likewise. - * testsuite/gas/i386/x86-64-nops-4.d: Likewise. - * testsuite/gas/i386/x86-64-nops-4-core2.d: Likewise. - * testsuite/gas/i386/x86-64-nops-4-k8.d: Likewise. - * testsuite/gas/i386/x86-64-nops-5.d: Likewise. - * testsuite/gas/i386/x86-64-nops-5-k8.d: Likewise. - * testsuite/gas/i386/x86-64-nops-7.d: Likewise. - * testsuite/gas/i386/x86-64-nop-1.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-2c.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-6.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-7.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-8.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-1-core2.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-1-k8.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-1.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-2.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-3.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-4-core2.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-4-k8.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-4.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-5-k8.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops-5.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-nops.d:: Likewise. - -2020-11-12 Jozef Lawrynowicz - - * config/tc-msp430.c (OPTION_MOVE_DATA): Define. - (md_parse_option): Ignore OPTION_MOVE_DATA. - (md_longopts): Handle -md option. - * testsuite/gas/msp430/msp430.exp: Run new test. - * testsuite/gas/msp430/empty.s: New test. - * testsuite/gas/msp430/ignore-md.d: New test. - -2020-11-12 Nick Clifton - - PR 26850 - * dwarf2dbg.c (dwarf2_gen_line_info_1): Do not record lines in - sections that are not executable or not loadable. - (out_debug_line): Move warning message into dwarf2_gen_line_info_1. - * testsuite/gas/elf/dwarf2-20.s: New test. - * testsuite/gas/elf/dwarf2-20.d: New test driver. - * testsuite/gas/elf/elf.exp: Run the new test. - * testsuite/gas/elf/warn-2.s: Use the .nop directive. - -2020-11-11 Przemyslaw Wirkus - - * testsuite/gas/aarch64/ls64.s: Update test. - -2020-11-09 Denys Zagorui - - * config/obj-elf (obj_elf_init_stab_section): Improve - reproducibility for stabs debugging data format - -2020-11-09 Spencer E. Olson - - * testsuite/gas/pru/misc.s: Add tests for lmbd (left-most bit - detect). - * testsuite/gas/pru/misc.d: Update expected disassembly. - -2020-11-09 Przemyslaw Wirkus - - * config/tc-aarch64.c: Fix comment. - * testsuite/gas/aarch64/ls64.d: New test. - * testsuite/gas/aarch64/ls64.s: Test for ACCDATA_EL1 register. - -2020-11-09 Przemyslaw Wirkus - - * config/tc-aarch64.c (process_omitted_operand): Add AARCH64_OPND_Rt_LS64. - (parse_operands): Parse Rt range for AARCH64_OPND_Rt_LS64. - * testsuite/gas/aarch64/ls64-invalid.l: Update test. - * testsuite/gas/aarch64/ls64-invalid.s: Update test. - * testsuite/gas/aarch64/ls64.s: Update test. - -2020-11-09 Andreas Schwab - - * Makefile.am (development.exp): Fix regexp. - * Makefile.in: Regenerate. - -2020-11-09 Nelson Chu - - * config/tc-riscv.c (explicit_mabi): New boolean to indicate if - the -mabi= option is explictly set. - (md_parse_option): Set explicit_mabi to TRUE if -mabi is set. - (riscv_set_abi_by_arch): New function. If the -mabi option isn't - set, then we set the abi according to the architecture string. - Otherwise, check if there are conflicts between architecture - and abi setting. - (riscv_after_parse_args): Move the abi setting to md_assemble nad - riscv_elf_final_processing. - (md_assemble): Call the riscv_set_abi_by_arch when we set the - start_assemble to TRUE. - (riscv_elf_final_processing): Likewise, in case the file without - any instruction. - * testsuite/gas/riscv/mabi-attr-01.s: New testcase. - * testsuite/gas/riscv/mabi-attr-02.s: Likewise. - * testsuite/gas/riscv/mabi-attr-03.s: Likewise. - * testsuite/gas/riscv/mabi-fail-01.d: Likewise. - * testsuite/gas/riscv/mabi-fail-01.l: Likewise. - * testsuite/gas/riscv/mabi-fail-02.d: Likewise. - * testsuite/gas/riscv/mabi-fail-02.l: Likewise. - * testsuite/gas/riscv/mabi-noabi-attr-01a.d: Likewise. - * testsuite/gas/riscv/mabi-noabi-attr-01b.d: Likewise. - * testsuite/gas/riscv/mabi-noabi-attr-02a.d: Likewise. - * testsuite/gas/riscv/mabi-noabi-attr-02b.d: Likewise. - * testsuite/gas/riscv/mabi-noabi-attr-03a.d: Likewise. - * testsuite/gas/riscv/mabi-noabi-attr-03b.d: Likewise. - * testsuite/gas/riscv/mabi-noabi-march-01.d: Likewise. - * testsuite/gas/riscv/mabi-noabi-march-02.d: Likewise. - * testsuite/gas/riscv/mabi-noabi-march-03.d: Likewise. - -2020-11-04 Przemyslaw Wirkus - - * testsuite/gas/aarch64/armv8-ras-1_1-invalid.d: New test. - * testsuite/gas/aarch64/armv8-ras-1_1-invalid.l: New test. - * testsuite/gas/aarch64/armv8-ras-1_1-invalid.s: New test. - * testsuite/gas/aarch64/armv8-ras-1_1.d: New test. - * testsuite/gas/aarch64/armv8-ras-1_1.s: New test. - * testsuite/gas/aarch64/illegal-ras-1.d: Remove. - * testsuite/gas/aarch64/illegal-ras-1.l: Remove. - * testsuite/gas/aarch64/illegal-ras-1.s: Remove. - * testsuite/gas/aarch64/illegal-sysreg-2.d: Remove. - * testsuite/gas/aarch64/illegal-sysreg-2.l: Remove. - -2020-11-03 Przemyslaw Wirkus - - * NEWS: Update docs. - * config/tc-aarch64.c: Add +ls64 feature to -march flags set. - * testsuite/gas/aarch64/ls64-invalid.d: New test. - * testsuite/gas/aarch64/ls64-invalid.l: New test. - * testsuite/gas/aarch64/ls64-invalid.s: New test. - * testsuite/gas/aarch64/ls64.s: New test. - -2020-11-03 Christian Eggers - - * config/obj-elf (elf_frob_symbol): Fix symbol value calculation - for versioned symbol aliases. - -2020-10-30 H.J. Lu - - PR gas/26703 - * config/tc-i386.c (output_insn): Update for - GNU_PROPERTY_X86_ISA_1_BASELINE. - * testsuite/gas/i386/property-1.d: Updated. - * testsuite/gas/i386/property-2.d: Likewise. - * testsuite/gas/i386/property-3.d: Likewise. - * testsuite/gas/i386/property-4.d: Likewise. - * testsuite/gas/i386/property-5.d: Likewise. - * testsuite/gas/i386/property-6.d: Likewise. - * testsuite/gas/i386/property-11.d: Likewise. - * testsuite/gas/i386/property-12.d: Likewise. - * testsuite/gas/i386/x86-64-property-1.d: Likewise. - * testsuite/gas/i386/x86-64-property-2.d: Likewise. - * testsuite/gas/i386/x86-64-property-3.d: Likewise. - * testsuite/gas/i386/x86-64-property-4.d: Likewise. - * testsuite/gas/i386/x86-64-property-5.d: Likewise. - * testsuite/gas/i386/x86-64-property-6.d: Likewise. - * testsuite/gas/i386/x86-64-property-11.d: Likewise. - * testsuite/gas/i386/x86-64-property-12.d: Likewise. - -2020-10-30 Przemyslaw Wirkus - - * NEWS: Update docs. - * testsuite/gas/aarch64/system-5.d: Update test with WFIT insn. - * testsuite/gas/aarch64/system-5.s: Update test with WFIT insn. - -2020-10-28 Przemyslaw Wirkus - - * config/tc-aarch64.c (parse_operands): Check for C0-C15 value of DSB - immediate string operand. - * testsuite/gas/aarch64/system-4.d: Update test. - * testsuite/gas/aarch64/system-4.s: Update test. - -2020-10-27 Przemyslaw Wirkus - - * NEWS: Update docs. - * config/tc-aarch64.c (parse_csr_operand): New operand parser. - (parse_operands): Call to CSR operand parser. - * testsuite/gas/aarch64/csre_csr-invalid.d: New test. - * testsuite/gas/aarch64/csre_csr-invalid.l: New test. - * testsuite/gas/aarch64/csre_csr-invalid.s: New test. - * testsuite/gas/aarch64/csre_csr.d: New test. - * testsuite/gas/aarch64/csre_csr.s: New test. - -2020-10-27 Przemyslaw Wirkus - - * NEWS: Update docs. - * testsuite/gas/aarch64/system-5.d: New test. - * testsuite/gas/aarch64/system-5.s: New test. - -2020-10-26 H.J. Lu - - PR gas/26778 - * * dwarf2dbg.c (num_of_auto_assigned): New. - (allocate_filenum): Increment num_of_auto_assigned. - (dwarf2_directive_filename): Clear the slots auto-assigned - before the first .file directive was seen. - * testsuite/gas/i386/dwarf4-line-1.d: New file. - * testsuite/gas/i386/dwarf4-line-1.s: Likewise. - * testsuite/gas/i386/i386.exp: Run dwarf4-line-1. - -2020-10-26 Cooper Qu - - * config/tc-csky.c (dump_literals): Fix the literal dump - of big vector constant. - -2020-10-26 Cooper Qu - - * testsuite/gas/csky/enhance_dsp.s : Change plsl.u16 to plsl.16. - * testsuite/gas/csky/enhance_dsp.d : Change plsl.u16 to plsl.16. - -2020-10-26 Cooper Qu - - * config/tc-csky.c (md_begin): Add version flag in eflag. - -2020-10-26 Cooper Qu - - * config/tc-csky.c (get_operand_value): Add handler for - OPRND_TYPE_IMM5b_VSH and OPRND_TYPE_VREG_WITH_INDEX. - * testsuite/gas/csky/csky_vdsp.d : Fix the disassembling for - vector register. - -2020-10-26 Lili Cui - - * testsuite/gas/i386/avx-vnni.d: Change psuedo prefix from - {vex3} to {vex} - * testsuite/gas/i386/x86-64-avx-vnni.d: Likewise. - -2020-10-23 Przemyslaw Wirkus - - * NEWS: Docs update. - * config/tc-aarch64.c (parse_operands): Add - AARCH64_OPND_BARRIER_DSB_NXS handler. - (md_begin): Add content of aarch64_barrier_dsb_nxs_options to - aarch64_barrier_opt_hsh hash. - * testsuite/gas/aarch64/system-4-invalid.d: New test. - * testsuite/gas/aarch64/system-4-invalid.l: New test. - * testsuite/gas/aarch64/system-4-invalid.s: New test. - * testsuite/gas/aarch64/system-4.d: New test. - * testsuite/gas/aarch64/system-4.s: New test. - -2020-10-21 Srinath Parvathaneni - - PR target/26763 - * config/tc-arm.c (parse_address_main): Add new MVE addressing mode - check. - * testsuite/gas/arm/mve-vldr-vstr-bad.d: New test. - * testsuite/gas/arm/mve-vldr-vstr-bad.l: Likewise. - * testsuite/gas/arm/mve-vldr-vstr-bad.s: Likewise. - -2020-10-20 Dr. David Alan Gilbert - - * config/tc-arc.c (emit_insn0): Fix printf format. - -2020-10-20 Ganesh Gopalasubramanian - - * config/tc-i386.c (cpu_arch): Add CPU_ZNVER3_FLAGS flags. - (i386_align_code): Add PROCESSOR_ZNVER cases. - * doc/c-i386.texi: Add znver3, snp, invlpgb and tlbsync. - * gas/i386/i386.exp: Add new znver3 test cases. - * gas/i386/arch-14-znver3.d: New. - * gas/i386/arch-14.d: New. - * gas/i386/arch-14.s: New. - * gas/i386/invlpgb.d: New. - * gas/i386/invlpgb64.d: New. - * gas/i386/invlpgb.s: New. - * gas/i386/snp.d: New. - * gas/i386/snp64.d: New. - * gas/i386/snp.s: New. - * gas/i386/tlbsync.d: New. - * gas/i386/tlbsync.s: New. - * gas/i386/x86-64-arch-4-znver3.d: New. - * gas/i386/x86-64-arch-4.d: New. - * gas/i386/x86-64-arch-4.s: New. - -2020-10-17 H.J. Lu - - PR gas/25878 - PR gas/26740 - * testsuite/gas/i386/dwarf5-line-4.d: New file. - * testsuite/gas/i386/dwarf5-line-4.s: Likewise. - * testsuite/gas/i386/i386.exp: Run dwarf5-line-4. - -2020-10-17 H.J. Lu - - PR gas/25878 - PR gas/26740 - * testsuite/gas/i386/dwarf5-line-3.s: Replace dwarf5-line-2.S - with dwarf5-line-3.S. - * testsuite/gas/i386/dwarf5-line-3.d: Updated. - -2020-10-17 H.J. Lu - - PR gas/25878 - PR gas/26740 - * dwarf2dbg.c (allocate_filename_to_slot): Don't reuse the slot 1 - here. - (dwarf2_where): Restore as_where. - (dwarf2_directive_filename): Clear the slot 1 if it was assigned - to the input file. - * testsuite/gas/i386/dwarf5-line-2.d: New file. - * testsuite/gas/i386/dwarf5-line-2.s: Likewise. - * testsuite/gas/i386/dwarf5-line-3.d: Likewise. - * testsuite/gas/i386/dwarf5-line-3.s: Likewise. - * testsuite/gas/i386/i386.exp: Run dwarf5-line-2 and - dwarf5-line-3. - -gas/ChangeLog: - -2020-10-16 Przemyslaw Wirkus - - * NEWS: Docs update. - * config/tc-aarch64.c (armv8.7-a): New arch. - * doc/c-aarch64.texi (-march=armv8.7-a): Update docs. - -2020-10-16 Przemyslaw Wirkus - - * testsuite/gas/aarch64/sysreg-6.d: New test. - * testsuite/gas/aarch64/sysreg-6.s: New test. - -2020-10-16 H.J. Lu - - PR gas/25878 - PR gas/26740 - * dwarf2dbg.c (file_entry): Remove auto_assigned. - (assign_file_to_slot): Remove the auto_assign argument. - (allocate_filenum): Updated. - (allocate_filename_to_slot): Reuse the input file entry in the - file table. - (dwarf2_where): Replace as_where with as_where_physical. - * testsuite/gas/i386/dwarf5-line-1.d: New file. - * testsuite/gas/i386/dwarf5-line-1.s: Likewise. - * testsuite/gas/i386/i386.exp: Run dwarf5-line-1. - -2020-10-16 Lili Cui - - * config/tc-i386.c (cpu_flags_match): Move Pseudo Prefix check - to ... - (match_template): Here. - * testsuite/gas/i386/avx-vnni-inval.l: New file. - * testsuite/gas/i386/avx-vnni-inval.s: Likewise. - * testsuite/gas/i386/avx-vnni.d: Delete invalid {vex2} test. - * testsuite/gas/i386/avx-vnni.s: Likewise. - * testsuite/gas/i386/i386.exp: Add AVX VNNI invalid tests. - * testsuite/gas/i386/x86-64-avx-vnni-inval.l: New file. - * testsuite/gas/i386/x86-64-avx-vnni-inval.s: Likewise. - * testsuite/gas/i386/x86-64-avx-vnni.d: Delete invalid {vex2} test. - * testsuite/gas/i386/x86-64-avx-vnni.s: Likewise. - -2020-10-14 H.J. Lu - Lili Cui - - * NEWS: Add Intel AVX VNNI. - * config/tc-i386.c (cpu_arch): Add .avx_vnni and noavx_vnni. - (cpu_flags_match): Support CpuVEX_PREFIX. - * doc/c-i386.texi: Document .avx_vnni, noavx_vnni and how to - encode Intel VNNI instructions with VEX prefix. - * testsuite/gas/i386/avx-vnni.d: New file. - * testsuite/gas/i386/avx-vnni.s: Likewise. - * testsuite/gas/i386/x86-64-avx-vnni.d: Likewise. - * testsuite/gas/i386/x86-64-avx-vnni.s: Likewise. - * testsuite/gas/i386/i386.exp: Run AVX VNNI tests. - -2020-10-14 Lili Cui - - * NEWS: Add Intel HRESET. - * config/tc-i386.c (cpu_arch): Add .hreset. - (cpu_noarch): Likewise. - * doc/c-i386.texi: Document .hreset, nohreset. - * testsuite/gas/i386/i386.exp: Run HRESET tests. - * testsuite/gas/i386/hreset.d: New file. - * testsuite/gas/i386/x86-64-hreset.d: Likewise. - * testsuite/gas/i386/hreset.s: Likewise. - -2020-10-14 Lili Cui - - * NEWS: Add Intel UINTR. - * config/tc-i386.c (cpu_arch): Add .uintr. - (cpu_noarch): Likewise. - * doc/c-i386.texi: Document .uintr and nouintr. - * testsuite/gas/i386/i386.exp: Run UINTR tests. - * testsuite/gas/i386/x86-64-uintr.d: Likewise. - * testsuite/gas/i386/x86-64-uintr.s: Likewise. - -2020-10-14 H.J. Lu - - * config/tc-i386.c (load_insn_p): Check opcodeprefix == 0 for - base_opcode == 0xfc7. - (match_template): Likewise. - (process_suffix): Check opcodeprefix == PREFIX_0XF2 for CRC32. - (check_byte_reg): Likewise. - (output_insn): Don't add the 0xf3 prefix twice for PadLock - instructions. Don't add prefix from non-VEX/EVEX base_opcode. - -2020-10-13 H.J. Lu - - * config/tc-i386.c (build_vex_prefix): Replace vexopcode with - opcodeprefix. - (build_evex_prefix): Likewise. - (is_any_vex_encoding): Don't check vexopcode. - (output_insn): Handle opcodeprefix. - -2020-10-09 H.J. Lu - - PR gas/26703 - * config/tc-i386.c (xstate): Add xstate_mask. - (md_assemble): Check i.types[j], instead of i.tm.operand_types[j], - for xstate. Set xstate_mask, instead of xstate_zmm, for RegMask. - (output_insn): Update for GNU_PROPERTY_X86_ISA_1_V[234]. Update - xstate for mask register and VSIB. - * testsuite/gas/i386/i386.exp: Run more GNU_PROPERTY tests. - * testsuite/gas/i386/property-1.s: Updated to the current - GNU_PROPERTY_X86_ISA_1_USED value. - * testsuite/gas/i386/property-2.s: Only keep cmove. - * testsuite/gas/i386/property-3.s: Changed to addsubpd. - * testsuite/gas/i386/property-1.d: Updated. - * testsuite/gas/i386/property-2.d: Likewise. - * testsuite/gas/i386/property-3.d: Likewise. - * testsuite/gas/i386/property-4.d: Likewise. - * testsuite/gas/i386/property-5.d: Likewise. - * testsuite/gas/i386/property-6.d: Likewise. - * testsuite/gas/i386/x86-64-property-1.d: Likewise. - * testsuite/gas/i386/x86-64-property-2.d: Likewise. - * testsuite/gas/i386/x86-64-property-3.d: Likewise. - * testsuite/gas/i386/x86-64-property-4.d: Likewise. - * testsuite/gas/i386/x86-64-property-5.d: Likewise. - * testsuite/gas/i386/x86-64-property-6.d: Likewise. - * testsuite/gas/i386/x86-64-property-7.d: Likewise. - * testsuite/gas/i386/x86-64-property-8.d: Likewise. - * testsuite/gas/i386/x86-64-property-9.d: Likewise. - * testsuite/gas/i386/property-11.d: New file. - * testsuite/gas/i386/property-11.s: Likewise. - * testsuite/gas/i386/property-12.d: Likewise. - * testsuite/gas/i386/property-12.s: Likewise. - * testsuite/gas/i386/property-13.d: Likewise. - * testsuite/gas/i386/property-13.s: Likewise. - * testsuite/gas/i386/x86-64-property-11.d: Likewise. - * testsuite/gas/i386/x86-64-property-12.d: Likewise. - * testsuite/gas/i386/x86-64-property-13.d: Likewise. - * testsuite/gas/i386/x86-64-property-14.d: Likewise. - * testsuite/gas/i386/x86-64-property-14.s: Likewise. - -2020-10-08 Przemyslaw Wirkus - - * NEWS: Docs update. - * testsuite/gas/aarch64/brbe-invalid.d: New test. - * testsuite/gas/aarch64/brbe-invalid.l: New test. - * testsuite/gas/aarch64/brbe-invalid.s: New test. - * testsuite/gas/aarch64/brbe.d: New test. - * testsuite/gas/aarch64/brbe.s: New test. - -2020-10-08 Przemyslaw Wirkus - - * NEWS: Docs update. - * testsuite/gas/aarch64/csre-invalid.d: New test. - * testsuite/gas/aarch64/csre-invalid.l: New test. - * testsuite/gas/aarch64/csre-invalid.s: New test. - * testsuite/gas/aarch64/csre.d: New test. - * testsuite/gas/aarch64/csre.s: New test. - -2020-10-06 Alex Coplan - - PR 26699 - * config/tc-aarch64.c (asm_barrier_opt): Delete. - (parse_barrier): Fix bogus type punning. - * testsuite/gas/aarch64/system.d: Update disassembly. - * testsuite/gas/aarch64/system.s: Add isb sy test. - -2020-10-06 Sergey Belyashav - - PR 26692 - * config/tc-z80.c (md_begin): Ensure that xpressions are empty - before using them. - (unify_indexed): Likewise. - (z80_start_line_hook): Improve hash sign handling when SDCC - compatibility mode enabled. - (md_parse_exp_not_indexed): Improve indirect addressing - detection. - (md_pseudo_table): Accept hd64 as an alias of z810. - -2020-10-06 Alan Modra - - * testsuite/gas/elf/sh-link-zero.s: Don't start directives in - first column. Don't use numeric labels. - -2020-10-05 Przemyslaw Wirkus - - * config/tc-arm.c: Update Cortex-X1 feature flags. - -2020-10-05 Kamil Rytarowski - - * configure.tgt (aarch64*-*-netbsd*): Add target. - -2020-10-05 Samanta Navarro - - * doc/as.texi: Fix spelling mistakes. - * doc/c-wasm32.texi: Likewise. - -2020-10-05 T.K. Chia - - PR gas/26694 - * NEWS: Updated for i386 lcall and ljmp change. - * config/tc-i386.c (output_interseg_jump): Allow non-absolute - segment operand for immediate lcall and ljmp. - * testsuite/gas/i386/jump.d, - * testsuite/gas/i386/jump.s, - * testsuite/gas/i386/jump16.d, - * testsuite/gas/i386/jump16.e, - * testsuite/gas/i386/jump16.s: Add tests for non-absolute - segment operand for immediate ljmp. - -2020-10-05 H.J. Lu - - PR binutils/26704 - * testsuite/gas/i386/noreg64-data16.d: Expect sysretl instead of - sysret. - * testsuite/gas/i386/noreg64.d: Likewise. - * testsuite/gas/i386/x86-64-intel64.d: Likewise. - * testsuite/gas/i386/x86-64-opcode.d: Likewise. - -2020-10-05 H.J. Lu - - PR binutils/26705 - * testsuite/gas/i386/x86-64-suffix.s: Add "mov %rsp,%rbp" before - sysretq. - * testsuite/gas/i386/x86-64-suffix-intel.d: Updated. - * testsuite/gas/i386/x86-64-suffix.d: Likewise. - -2020-10-05 Nick Clifton - - PR 26253 - * config/obj-elf.c (obj_elf_section): Accept a numeric value for - the "o" section flag. Interpret it as a section index. Allow an - index of zero. - * doc/as.texi: Document the new behaviour. - * NEWS: Mention the new feature. Tidy entries. - * testsuite/gas/elf/sh-link-zero.s: New test. - * testsuite/gas/elf/sh-link-zero.d: New test driver. - * testsuite/gas/elf/elf.exp: Run the new test. - * testsuite/gas/elf/section21.l: Updated expected assembler - output. - -2020-10-05 Przemyslaw Wirkus - - * config/tc-aarch64.c: Update Cortex-X1 feature flags. - -2020-10-03 H.J. Lu - - PR gas/26685 - * config/tc-i386.c (process_suffix): Also check the register - operand for the address size prefix if the memory operand has - no real registers. - * testsuite/gas/i386/enqcmd-16bit.d: New file. - * testsuite/gas/i386/enqcmd-16bit.s: Likewise. - * testsuite/gas/i386/movdir-16bit.d: Likewise. - * testsuite/gas/i386/movdir-16bit.s: Likewise. - * testsuite/gas/i386/enqcmd.s: Add tests with symbol and DISP. - * testsuite/gas/i386/x86-64-enqcmd.s: Likewise. - * testsuite/gas/i386/x86-64-movdir.s: Likewise. - * testsuite/gas/i386/movdir.s: Add tests with symbol and DISP. - Remove the .code16 test. - * testsuite/gas/i386/i386.exp: Run movdir-16bit and enqcmd-16bit. - * testsuite/gas/i386/x86-64-enqcmd-intel.d: Updated. - * testsuite/gas/i386/x86-64-enqcmd.d: Likewise. - * testsuite/gas/i386/x86-64-movdir-intel.d: Likewise. - * testsuite/gas/i386/x86-64-movdir.d: Likewise. - * testsuite/gas/i386/enqcmd-intel.d: Likewise. - * testsuite/gas/i386/enqcmd.d: Likewise. - * testsuite/gas/i386/movdir-intel.d: Likewise. - * testsuite/gas/i386/movdir.d: Likewise. - * testsuite/gas/i386/x86-64-enqcmd-intel.d: Likewise. - * testsuite/gas/i386/x86-64-enqcmd.d: Likewise. - * testsuite/gas/i386/x86-64-movdir-intel.d: Likewise. - * testsuite/gas/i386/x86-64-movdir.d: Likewise. - -2020-10-02 Nick Clifton - - * testsuite/gas/arm/mve-vcvtne-it.d: Allow for padding inserted by - PE based targets. - -2020-10-01 Nick Clifton - - * config/obj-elf (elf_pseudo_table): Add attach_to_group. - (obj_elf_attach_to_group): New function. - * doc/as.texi: Document the new directive. - * NEWS: Mention the new feature. - * testsuite/gas/elf/attach-1.s: New test. - * testsuite/gas/elf/attach-1.d: New test driver. - * testsuite/gas/elf/attach-2.s: New test. - * testsuite/gas/elf/attach-2.d: New test driver. - * testsuite/gas/elf/attach-err.s: New test. - * testsuite/gas/elf/attach-err.d: New test driver. - * testsuite/gas/elf/attach-err.err: New test error output. - * testsuite/gas/elf/elf.exp: Run the new tests. - -2020-09-16 H.J. Lu - - PR gas/26685 - * config/tc-i386.c (process_suffix): Check the register operand - for the address size prefix if the memory operand is symbol(%rip). - * testsuite/gas/i386/x86-64-enqcmd.s: Add tests with RIP-relative - addressing. - * testsuite/gas/i386/x86-64-movdir.s: Likewise. - * testsuite/gas/i386/x86-64-enqcmd-intel.d: Updated. - * testsuite/gas/i386/x86-64-enqcmd.d: Likewise. - * testsuite/gas/i386/x86-64-movdir-intel.d: Likewise. - * testsuite/gas/i386/x86-64-movdir.d: Likewise. - -2020-09-30 Przemyslaw Wirkus - - * config/tc-aarch64.c: Add Cortex-A78 and Cortex-A78AE cores. - * doc/c-aarch64.texi: Update docs. - * NEWS: Update news. - -2020-09-30 Alex Coplan - - * NEWS: Mention recent Arm processor support. - -2020-09-30 Alex Coplan - - * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n2. - * doc/c-aarch64.texi: Document support for Neoverse N2. - -2020-09-30 Alan Modra - - * config/obj-elf.c (obj_elf_change_section): Rename variable to - avoid shadowing warning. - * symbols.c (symbol_entry_find): Init all symbol_flags fields. - -2020-09-30 Przemyslaw Wirkus - - * config/tc-arm.c: Add cortex-a78 and cortex-a78ae cores. - * doc/c-arm.texi: Update docs. - * NEWS: Update news. - * testsuite/gas/arm/cpu-cortex-a78.d: New test. - * testsuite/gas/arm/cpu-cortex-a78ae.d: New test. - -2020-09-29 Przemyslaw Wirkus - - * NEWS: TRBE, ETE, ETMv4 and Cortex-X1 news updates. - -2020-09-28 Przemyslaw Wirkus - - * config/tc-arm.c: (arm_cpus): Add Cortex-X1. - * doc/c-arm.texi: Document -mcpu=cortex-x1. - * testsuite/gas/arm/cpu-cortex-x1.d: New test. - -2020-09-28 Przemyslaw Wirkus - - * testsuite/gas/aarch64/etm-ro-invalid.d: New test. - * testsuite/gas/aarch64/etm-ro-invalid.l: New test. - * testsuite/gas/aarch64/etm-ro-invalid.s: New test. - * testsuite/gas/aarch64/etm-ro.s: New test. - * testsuite/gas/aarch64/etm-wo-invalid.d: New test. - * testsuite/gas/aarch64/etm-wo-invalid.l: New test. - * testsuite/gas/aarch64/etm-wo-invalid.s: New test. - * testsuite/gas/aarch64/etm-wo.s: New test. - * testsuite/gas/aarch64/etm.s: New test. - * testsuite/gas/aarch64/sysreg.d: system register s2_1_c0_c3_0 - disassembled now to trcstatr. - -2020-09-28 Przemyslaw Wirkus - - * config/tc-aarch64.c: (aarch64_cpus): Add Cortex-X1. - * doc/c-aarch64.texi: Document -mcpu=cortex-x1. - -2020-09-28 Przemyslaw Wirkus - - * testsuite/gas/aarch64/ete.d: New test. - * testsuite/gas/aarch64/ete.s: New test. - -2020-09-28 Przemyslaw Wirkus - - * testsuite/gas/aarch64/trbe-invalid.d: New test. - * testsuite/gas/aarch64/trbe-invalid.l: New test. - * testsuite/gas/aarch64/trbe-invalid.s: New test. - * testsuite/gas/aarch64/trbe.d: New test. - * testsuite/gas/aarch64/trbe.s: New test. - -2020-09-28 Alex Coplan - - * config/tc-arm.c (arm_cpus): Add FP16 to Neoverse V1. - -2020-09-28 Alex Coplan - - * config/tc-aarch64.c (aarch64_cpus): Group Neoverse cores together, - add missing F16 bit to Neoverse V1. - -2020-09-26 Alan Modra - - * config/tc-csky.c (parse_type_ctrlreg): Don't mask mach_flag - for csky_get_control_regno. - (csky_get_reg_val): Likewise when calling csky_get_general_regno. - -2020-09-24 Jim Wilson - - PR 26400 - * config/tc-riscv.c (append_insn): If in absolute section, emit - error before add_relaxed_insn call. - * testsuite/gas/riscv/absolute-sec.d: New. - * testsuite/gas/riscv/absolute-sec.l: New. - * testsuite/gas/riscv/absolute-sec.s: New. - -2020-09-23 Mark Wielaard - - * testsuite/gas/elf/dwarf-5-cu.d: Adjust expected output. - -2020-09-24 Alex Coplan - - * config/tc-arm.c (arm_cpus): Add Neoverse V1. - * doc/c-arm.texi: Document Neoverse V1 support. - -2020-09-24 Alex Coplan - - * config/tc-aarch64.c (aarch64_cpu_option_table): Add Neoverse V1. - * doc/c-aarch64.texi: Document Neoverse V1 support. - -2020-09-24 Alex Coplan - - * config/tc-arm.c (arm_cpus): Add Neoverse N2. - * doc/c-arm.texi: Document -mcpu=neoverse-n2. - -2020-09-24 Lili Cui - - * NEWS: Add TDX. - * config/tc-i386.c (cpu_arch): Add .tdx. - (cpu_noarch): Likewise. - * doc/c-i386.texi: Document tdx. - * testsuite/gas/i386/i386.exp: Run tdx tests. - * testsuite/gas/i386/tdx.d: Likewise. - * testsuite/gas/i386/tdx.s: Likewise. - * testsuite/gas/i386/x86-64-tdx.d: Likewise. - * testsuite/gas/i386/x86-64-tdx.s: Likewise. - -2020-09-17 Cooper Qu - - * config/tc-csky.c (parse_type_ctrlreg): Use function - csky_get_control_regno to operand. - (csky_get_reg_val): Likewise. - (is_reg_sp_with_bracket): Use function csky_get_reg_val - to parse operand. - (is_reg_sp): Refine. - (is_oimm_within_range): Fix, report error when operand - is not constant. - (parse_type_cpreg): Refine. - (parse_type_cpcreg): Refine. - (get_operand_value): Add handle of OPRND_TYPE_IMM5b_LS. - (md_assemble): Fix no error reporting somtimes when - operands number are not fit. - (csky_addc64): Refine. - (csky_subc64): Refine. - (csky_or64): Refine. - (v1_work_fpu_fo): Refine. - (v1_work_fpu_read): Refine. - (v1_work_fpu_writed): Refine. - (v1_work_fpu_readd): Refine. - (v2_work_addc): New function, strengthen the operands legality - check of addc. - * testsuite/gas/csky/all.d : Use register number format when - disassemble register name by default. - * testsuite/gas/csky/cskyv2_all.d : Likewise. - * testsuite/gas/csky/trust.d: Likewise. - * testsuite/gas/csky/cskyv2_ck860.d : Fix. - * testsuite/gas/csky/trust.s : Fix. - -2020-09-23 Lili Cui - - * NEWS: Add Key Locker. - * config/tc-i386.c (cpu_arch): Add .kl and .wide_kl. - (cpu_noarch): Likewise. - * doc/c-i386.texi: Document kl and wide_kl. - * testsuite/gas/i386/i386.exp: Run keylocker tests. - * testsuite/gas/i386/keylocker-intel.d: New test. - * testsuite/gas/i386/keylocker.d: Likewise. - * testsuite/gas/i386/keylocker.s: Likewise. - * testsuite/gas/i386/x86-64-keylocker-intel.d: Likewise. - * testsuite/gas/i386/x86-64-keylocker.d: Likewise. - * testsuite/gas/i386/x86-64-keylocker.s: Likewise. - * testsuite/gas/i386/x86-64-property-10.d: Likewise. - * testsuite/gas/i386/property-10.d: Likewise. - * testsuite/gas/i386/property-10.s: Likewise. - -2020-09-21 Alan Modra - - PR 26569 - * config/tc-riscv.c (append_insn): Don't tie off frags at CALL - relocs. - (riscv_call): Tie them off after the jalr. - (md_apply_fix): Zero fx_size of RELAX fixup. - -2020-09-018 David Faust - - * testsuite/gas/bpf/alu-xbpf.d: New file. - * testsuite/gas/bpf/alu-xbpf.s: Likewise. - * testsuite/gas/bpf/alu32-xbpf.d: Likewise. - * testsuite/gas/bpf/alu32-xbpf.d: Likewise. - * testuiste/gas/bpf/bpf.exp: Run new tests. - -2020-09-18 Tucker - - PR 26556 - * read.c (bss_alloc): Convert size parameter from octets to - bytes. - -2020-09-17 Alan Modra - - * testsuite/gas/i386/i386.exp: Return early if not x86. - -2020-09-16 Alan Modra - - * config/obj-elf.c (obj_elf_visibility, elf_frob_symbol): Adjust - elf_symbol_from invocation. - * config/tc-aarch64.c (s_variant_pcs): Likewise. - * config/tc-m68hc11.c (s_m68hc11_mark_symbol): Likewise. - * config/tc-ppc.c (ppc_elf_localentry, ppc_force_relocation), - (ppc_fix_adjustable): Likewise. - * config/tc-xgate.c (xgate_frob_symbol): Likewise. - -2020-09-15 H.J. Lu - - * testsuite/gas/cfi/reloc-pe-i386.d: Updated. - * testsuite/gas/i386/x86-64-w64-pcrel.d: Likewise. - -2020-09-15 Alan Modra - - PR 26610 - * config/tc-arm.c (move_or_literal_pool): Correct extraction of - bignum. Use unsigned "v" - (is_double_a_single): Make "v" and "mantissa" unsigned. Formatting. - (double_to_single): Likewise. - -2020-09-15 Nick Clifton - - * read.c (s_nop): Preserve the input_line_pointer around the call - to md_assemble. - * config/tc-s12z.c (md_assemble): Revert previous delta. - -2020-09-15 David Faust - - * config/tc-bpf.h (md_single_noop_insn): Use 'ja 0' for no-op. - -2020-09-14 Nick Clifton - - * read.c (s_nop): New function. Handles the .nop directive. - (potable): Add entry for "nop". - (s_nops): Code tidy. - * read.h (s_nop): Add prototype. - * config/tc-bpf.h (md_single_noop_insn): Define. - * config/tc-mmix.h (md_single_noop_insn): Define. - * config/tc-or1k.h (md_single_noop_insn): Define. - * config/tc-ia64.h (md_single_noop_insn): Define. - * config/tc-s12z.c (md_assemble): Preserve the input line pointer, - rather than corrupting it. - * write.c (relax_segment): Update error message regarding - non-absolute values passed to .fill and .nops. - * NEWS: Mention the new directive. - * doc/as.texi: Document the new directive. - * doc/internals.texi: Document the new internal macros used to - implement the new directive. - * testsuite/gas/all/nop.s: New test. - * testsuite/gas/all/nop.d: New test control file. - * testsuite/gas/all/gas.exp: Run the new test. - * testsuite/gas/elf/dwarf-5-nop-for-line-table.s: New test. - * testsuite/gas/elf/dwarf-5-nop-for-line-table.d: New test - control file. - * testsuite/gas/elf/elf.exp: Run the new test. - * testsuite/gas/i386/space1.l: Adjust expected output. - -2020-09-07 Mark Wielaard - - * as.texi (-g): Explicitly mention when .debug_info and .debug_line - are generated for the DWARF format. - (Loc): Add that it is an error to both use a .loc directive and - generate a .debug_line yourself. - * dwarf2dbg.c (dwarf2_any_loc_directive_seen): New static variable. - (dwarf2_directive_loc): Set dwarf2_any_loc_directive_seen to TRUE. - (dwarf2_finish): Check dwarf2_any_loc_directive_seen before emitting - an error. Only create .debug_line if it is empty (or doesn't exist). - * testsuite/gas/i386/i386.exp: Add dwarf2-line-{1,2,3,4} when testing - an elf target. - * testsuite/gas/i386/dwarf2-line-{1,2,3,4}.{s,d,l}: New test files. - -2020-09-10 Cooper Qu - - * config/tc-csky.c (md_begin): Enable extend lrw by default for - CK802, CK803 and CK860. - -2020-09-10 Cooper Qu - - * config/tc-csky.c (struct csky_cpu_info): Add new members - isa_flag, features and ver. - (struct csky_cpu_feature): New. - (struct csky_cpu_version): New. - (CSKY_FEATURE_MAX): Define. - (CSKY_CPU_REVERISON_MAX): Define. - (FEATURE_DSP_EXT, FEATURE_DSP, FEATURE_MMU, FEATURE_VDSP, - FEATURE_FLOAT, FEATURE_TRUST, FEATURE_JAVA, FEATURE_SHIELD): - Define, each standard one collection of instructions. - (CSKY_FEATURES_DEF_NULL, CSKY_FEATURES_DEF_e, - CSKY_FEATURES_DEF_t, CSKY_FEATURES_DEF_f, CSKY_FEATURES_DEF_v, - CSKY_FEATURES_DEF_ef, CSKY_FEATURES_DEF_jt, - CSKY_FEATURES_DEF_efht, CSKY_FEATURES_DEF_efv, - CSKY_FEATURES_DEF_eft, CSKY_FEATURES_DEF_d, - CSKY_FEATURES_DEF_df, CSKY_FEATURES_DEF_ft, - CSKY_FEATURES_DEF_tv, CSKY_FEATURES_DEF_fv, - CSKY_FEATURES_DEF_dft, CSKY_FEATURES_DEF_dfv, - CSKY_FEATURES_DEF_ftv, CSKY_FEATURES_DEF_eftv): Define, - the features combination used by cpu. - (CSKY_CPU_REVERISON_r0p0, CSKY_CPU_REVERISON_r1p0, - CSKY_CPU_REVERISON_r2p0, CSKY_CPU_REVERISON_r3p0, - CSKY_CPU_REVERISON_RESERVED, CSKY_CPU_REVERISON_R3): - Define, version information used by cpu. - (csky_cpus): Refine, and add CK804, CK805 and CK800. - (parse_cpu): Refine. - (parse_arch): Refine. - (md_show_usage): Refine. - (md_begin): Refine. - -2020-09-09 Alan Modra - - * config/tc-ppc.c (md_assemble): Emit prefix insn by parts when - valueT is smaller than 64 bits. - -2020-09-07 Cooper Qu - - * config/tc-csky.c (CSKYV2_ISA_DSP): CSKY_ISA_DSPE60. - (CSKY_ISA_860): Likewise. - -2020-09-07 Cooper Qu - - * config/tc-csky.c (float_abi): New. - (md_longopts): Add mfloat-abi. - (struct sky_option_value_table): New. - (csky_float_abis): New, the possible values for -mfloat-abi. - (parse_float_abi): New funtion. - (md_show_usage): Show help information for -mfloat-abi. - (set_csky_attribute): Store float-abi value. - -2020-09-07 Cooper Qu - - * config/tc-csky.c (float_work_fpuv3_fmovi): New function, - helper function to encode fpuv3 fmovi instructions. - (float_work_fpuv3_fstore): New function. - (struct literal): Add new member 'offset'. - (csky_cpus): New cpu CK860f. - (enter_literal): Return literal pool pointer instead of offset. - (parse_rt): Adjust the change of enter_literal. - (parse_rtf): Likewise. - (v1_work_lrw): Likewise. - (v1_work_jbsr): Likewise. - (v2_work_lrw): Likewise. - (v2_work_jbsr): Likewise. - (v2_work_jsri): Likewise. - (vdsp_work_vlrw): Likewise. - (is_freglist_legal): Add handler for FPUV3. - (parse_type_freg): Likewise. - (is_imm_within_range): Set e.X_add_number if it is a signed and - negtive number. - (get_operand_value): Add handler for OPRND_TYPE_IMM9b, - OPRND_TYPE_HFLOAT_FMOVI, OPRND_TYPE_SFLOAT_FMOVI - and OPRND_TYPE_DFLOAT_FMOVI. - (float_to_half): Convert float number to harf float. - * testsuite/gas/csky/case-fpuv3-ck860f/ : New folder containing - the test cases for FPUV3, they are divided by instruction - operands format and both have legal cases and illegal cases. - -2020-09-08 Jozef Lawrynowicz - Kuan-Lin Chen - - * config/tc-msp430.c (msp430_insert_uleb128_fixes): New. - (msp430_md_end): Call msp430_insert_uleb128_fixes. - -2020-09-08 Alex Coplan - - * config/tc-aarch64.c (aarch64_cpus): Add Cortex-R82. - * doc/c-aarch64.texi: Document -mcpu=cortex-r82. - -2020-09-08 Alex Coplan - - * config/tc-aarch64.c (parse_sys_reg): Also pass sysreg name to - validation function. - (parse_sys_ins_reg): Likewise. - (print_operands): Pass CPU features to aarch64_print_operand(). - * testsuite/gas/aarch64/v8-r-bad-sysregs.d: New test. - * testsuite/gas/aarch64/v8-r-bad-sysregs.l: Error output. - * testsuite/gas/aarch64/v8-r-bad-sysregs.s: Input. - * testsuite/gas/aarch64/v8-r-sysregs-need-arch.d: New test. - * testsuite/gas/aarch64/v8-r-sysregs-need-arch.l: Error output. - * testsuite/gas/aarch64/v8-r-sysregs.d: New test. - * testsuite/gas/aarch64/v8-r-sysregs.s: Input for previous two tests. - -2020-09-08 Alex Coplan - - * testsuite/gas/aarch64/dfb.d: New test. - * testsuite/gas/aarch64/dfb.s: Input. - -2020-09-08 Alex Coplan - - * config/tc-aarch64.c (aarch64_archs): Add armv8-r. - * doc/c-aarch64.texi: Document -march=armv8-r. - -2020-09-07 Mark Wielaard - - * dwarf2dbg.c (add_line_strp): New function. - (out_dir_and_file_list): Take line_seg and sizeof_offset as - arguments, Use DW_FORM_line_strp for dir and file. Call - add_line_strp and set symbol offset for DWARF2_LINE_VERSION 5. - (out_debug_line): Call out_dir_and_file_list with line_seg and - sizeof_offset. - * testsuite/gas/elf/dwarf-5-file0.d: Expect indirect line - strings. - -2020-09-07 Mark Wielaard - - * dwarf2dbg.c (DWARF2_RNGLISTS_VERSION): New constant. - (out_debug_ranges): Add ranges_sym argument and set it. - (out_debug_rnglists): New function. - (out_debug_info): Change ranges_seg argument to ranges_sym - and use it to set DW_AT_ranges value. - (dwarf2_finish): Remove ranges_seg, add ranges_sym. For - DWARF2_VERSION 5 call out_debug_rnglists. - -2020-09-07 Mark Wielaard - - * dwarf2dbg.c (dwarf2_directive_filename): Initialize with_md5 to - FALSE. - * testsuite/gas/elf/dwarf-5-file0.s: Add a random bignum. - -2020-09-01 Mark Wielaard - - * dwarf2dbg.c (out_debug_abbrev): Use DW_FORM_sec_offset for DWARF - version 4 or higher. - -2020-09-02 Alan Modra - - * expr.c (add_to_result, subtract_from_result): Use unsigned - addition and subtraction. - -2020-09-02 Alan Modra - - * config/tc-z80.c (is_overflow): Avoid too large shift. - -2020-09-02 Alan Modra - - * config/tc-sparc.c (in_signed_range): Use an unsigned type for - sign mask. - -2020-09-02 Alan Modra - - * config/tc-nios2.c (md_apply_fix): Avoid too large shift. - -2020-09-02 Alan Modra - - * config/tc-mips.c (load_register): Avoid too large shift. - -2020-09-02 Alan Modra - - * config/tc-d30v.c (parallel_ok): Use 1UL for left shift expression. - -2020-09-02 Alan Modra - - * config/rx-parse.y (rx_intop): Avoid too large shifts. - (rx_intop, rx_uintop, rx_disp3op, rx_disp5op, displacement), - (rtsd_immediate): Use correctly typed unsigned variables. - -2020-09-02 Alan Modra - - * config/obj-macho.c (obj_mach_o_zerofill): Correct type of - constant shifted left. - -2020-09-02 Alan Modra - - * config/bfin-lex.l: Use an unsigned type for "value". - -2020-09-02 Alan Modra - - * config/tc-pdp11.c (md_number_to_chars): Condition nbytes=8 code - on BFD64. - -2020-09-02 Cooper Qu - - * config/tc-csky.c (csky_cpus): Add ck803r3. - (CSKY_ISA_803R3): Define. - (CSKY_ISA_803R2): Refine, use CSKY_ISA_803R1. - -2020-09-02 Cooper Qu - - * testsuite/gas/csky/cskyv2_dsp.d : Fix Encode of mulsws. - -2020-09-02 Cooper Qu - - * config/tc-csky.c (struct literal): New member bignum. - (dump_literals): Handle big constant. - (enter_literal): Likewise. - (parse_type_freg): Handle vector register. - -2020-09-01 H.J. Lu - - * doc/as.texi: Document the .tls_common directive. - -2020-09-01 Alan Modra - - PR 26420 - PR 26421 - PR 26425 - PR 26427 - * config/tc-arm.c (struct arm_it): Make size, size_req, cond and - uncond_value unsigned. - (parse_vfp_reg_list): Make setmask unsigned, vpr_str_len size_t. - (parse_big_immediate): Cast generic_bignum elements to unsigned. - (encode_thumb32_immediate): Shift left 0xffU. - (double_to_single): Make sign unsigned. Tidy. - (move_or_literal_pool): Cast LITTLE_NUM elements to uint64_t or - valueT. - (vfp_or_neon_is_neon): Adjust inst.uncond_value expression. - (md_assemble): Likewise. - (handle_pred_state): Make cond unsigned. - (thumb32_negate_data_op): Make variables unsigned. - (md_apply_fix): Make value and newval unsigned, adjust uses. - -2020-08-31 Alan Modra - - PR 26510 - * config/tc-z8k.c (buffer): Use unsigned char. - (apply_fix): Use unsigned char* pointers. - (build_bytes): Likewise and mask nibbles when packing. - -2020-08-31 Alan Modra - - PR 26503 - * config/tc-v850.c (parse_register_list): Shift 1u left. - -2020-08-31 Alan Modra - - PR 26502 - * config/tc-tic6x.c (md_apply_fix): Use unsigned variables. - -2020-08-31 Alan Modra - - PR 26497 - * config/tc-sh.c (assemble_ppi): Use unsigned variables. - -2020-08-31 Alan Modra - - PR 26495 - * config/tc-score.c (s3_apply_fix): Use unsigned variables. - * config/tc-score7.c (s7_apply_fix): Likewise. - -2020-08-31 Alan Modra - - PR 26480 - * config/tc-nios2.c (nios2_parse_reglist): Shift 1UL left. - -2020-08-31 Alan Modra - - PR 26479 - * config/tc-nios2.c (md_chars_to_number): Cast buf[i] before shifting. - -2020-08-31 Alan Modra - - PR 26472 - PR 26473 - PR 26474 - * config/tc-mips.c (operand_reg_mask): Shift 1u left. - (load_register): Shift 0xffffU left. - -2020-08-31 Alan Modra - - PR 26471 - * config/tc-metag.c (md_chars_to_number): Make retval unsigned. - -2020-08-31 Alan Modra - - PR 26468 - * config/tc-mep.c (md_convert_frag): Use uint32_t for addend and - other variables. - -2020-08-31 Alan Modra - - PR 26493 - * config/tc-riscv.c (riscv_ip): Cast X_add_number passed to - VALID_* macros to unsigned. - -2020-08-31 Alan Modra - - * config/tc-crx.c: Formatting. - (CRX_PRINT): Wrap params in parentheses. Remove parens from uses - throughout file. - (reset_vars, get_register, get_copregister, get_optype, get_opbits), - (get_opflags, get_number_of_operands, parse_operand, gettrap), - (handle_LoadStor, getconstant, check_range, getreg_image), - (parse_operands, parse_insn, print_operand, print_constant), - (exponent2scale, mask_reg, process_label_constant, set_operand), - (assemble_insn, print_insn): Delete unnecessary forward declaration. - (print_insn): Make static. - (print_constant): Make "constant" unsigned. - (assemble_insn): Tidy REVERSE_MATCH index calc. - * expr.c (generic_bignum_to_int32): Cast elements to valueT. - -2020-08-31 Alan Modra - - PR 26509 - * config/tc-z80.c (is_overflow): Use 1UL in mask shift expression. - -2020-08-30 Alan Modra - - * config/tc-tic4x.c (tic4x_gen_to_words): Rewrite mantissa - overflow test without UB. Avoid other UB shifts by making them - unsigned. - -2020-08-31 Cooper Qu - - * config/tc-csky.c (csky_error_state): New member 'arg_int'. - (SET_ERROR_NUMBER): Rename to SET_ERROR_STRING. - (SET_ERROR_INTEGER): New. - (err_formats): Add error format for ERROR_FREG_OVER_RANGE and - ERROR_VREG_OVER_RANGE. - (csky_show_error): Pass an integer argument for some error - numbers. - (parse_exp): Call SET_ERROR_STRING instead of SET_ERROR_NUMBER. - (parse_rt): Likewise. - (parse_type_ctrlreg): Likewise. - (csky_get_reg_val): Likewise. - (is_reglist_legal): Likewise. - (is_freglist_legal): Likewise. - (is_reglist_dash_comma_legal): Likewise. - (is_reg_lshift_illegal): Likewise. - (is_psr_bit): Likewise. - (parse_type_cpreg): Likewise. - (parse_type_cpcreg): Likewise. - (parse_type_areg): Likewise. - (parse_type_freg): Likewise. - (parse_ldst_imm): Likewise and call SET_ERROR_INTEGER. - (get_operand_value): Likewise. - (parse_operands_op): Likewise and call is_imm_within_range, - is_imm_within_range_ext and is_oimm_within_range. - (md_assemble): Likewise. - (is_imm_within_range): New. - (is_imm_within_range_ext): Rename from is_imm_over_range. - (is_oimm_within_range): Rename from is_oimm_over_range. - (v2_work_add_sub): Call SET_ERROR_INTEGER. - (csky_rolc): call is_imm_within_range instead of - is_imm_over_range. - -2020-08-31 Cooper Qu - - * config/tc-csky.c (md_begin): Add warning when -mdsp and - -mcpu=ck803ern are both added. - (parse_ldst_imm): Fix error message. - -2020-08-30 Alan Modra - - * testsuite/gas/cr16/cbitb_test.d: Update expected output. - * testsuite/gas/cr16/cbitw_test.d: Likewise. - * testsuite/gas/cr16/sbitb_test.d: Likewise. - * testsuite/gas/cr16/sbitw_test.d: Likewise. - * testsuite/gas/cr16/storb_test.d: Likewise. - * testsuite/gas/cr16/storw_test.d: Likewise. - * testsuite/gas/cr16/tbitb_test.d: Likewise. - * testsuite/gas/cr16/tbitw_test.d: Likewise. - -2020-08-30 Alan Modra - - PR 26437 - PR 26438 - * config/tc-cr16.c: Include limits.h, formatting. - (CR16_PRINT): Wrap params in parentheses. Remove parens from uses - throughout file. - (getconstant): Handle zero nbits. - (print_operand): Use unsigned variables. Simplify handling of - index regs. - (check_range): Use int32_t variables. Correct range checks. - -2020-08-29 Alan Modra - - PR 26481 - * config/tc-pj.c (md_assemble): Don't loop past end of - opcode->arg array. - -2020-08-28 Alan Modra - - PR 26460 - * config/tc-ia64.c (parse_operands): Don't access past end of - idesc->operands. - -2020-08-26 Mark Wielaard - - * as.c (parse_args): Handle bad -gdwarf options. - -2020-08-28 Cooper Qu - - * config/tc-csky.c (md_begin): Set attributes. - (isa_flag): Change type to unsigned 64 bits. - (struct csky_cpu_info): Likewise. - (struct csky_macro_info): Likewise. - (set_csky_attribute): New. - * testsuite/gas/csky/802j.d: Ignore .csky.attributes section. - * testsuite/gas/csky/all.d: Likewise. - * testsuite/gas/csky/bsr1.d: Likewise. - * testsuite/gas/csky/csky_vdsp.d: Likewise. - * testsuite/gas/csky/cskyv2_all.d: Likewise. - * testsuite/gas/csky/cskyv2_ck803r2.d: Likewise. - * testsuite/gas/csky/cskyv2_ck860.d: Likewise. - * testsuite/gas/csky/cskyv2_dsp.d: Likewise. - * testsuite/gas/csky/cskyv2_elrw.d: Likewise. - * testsuite/gas/csky/cskyv2_float.d: Likewise. - * testsuite/gas/csky/enhance_dsp.d: Likewise. - * testsuite/gas/csky/java.d: Likewise. - * testsuite/gas/csky/v1_float.d: Likewise. - * testsuite/gas/csky/v2_float_part1.d: Likewise. - * testsuite/gas/csky/v2_float_part2.d: Likewise. - * testsuite/gas/csky/v2_tls_gd.d: Likewise. - * testsuite/gas/csky/v2_tls_ie.d: Likewise. - * testsuite/gas/csky/v2_tls_ld.d: Likewise. - * testsuite/gas/csky/v2_tls_le.d: Likewise. - * testsuite/gas/elf/elf.exp: Add handler for CSKY. - * testsuite/gas/elf/section2.e-csky: New. - -2020-08-27 Alan Modra - - PR 26467 - * cgen.c (weak_operand_overflow_check): Handle opmask for - operand length zero. Use 1UL constant. - -2020-08-26 Alan Modra - - PR 26508 - * config/tc-xtensa.c (xg_get_trampoline_chain): Return early - when n_entries is zero. - -2020-08-26 Alan Modra - - PR 26448 - * symbols.c: Include limits.h. - (resolve_symbol_value ): Do an - unsigned shift. Warn if shift count larger than valueT size. - -2020-08-26 Alan Modra - - PR 26447 - * expr.c (expr ): Do an unsigned shift. - -2020-08-25 Alan Modra - -2020-08-26 David Faust - - * config/tc-bpf.c: Add option -mxbpf to select xbpf isa. - * testsuite/gas/bpf/indcall-1.d: New file. - * testsuite/gas/bpf/indcall-1.s: Likewise. - * testsuite/gas/bpf/indcall-bad-1.l: Likewise. - * testsuite/gas/bpf/indcall-bad-1.s: Likewise. - * testsuite/gas/bpf/bpf.exp: Run new tests. - -2020-08-25 Alan Modra - - PR 26501 - * config/tc-tic54x.c (tic54x_undefined_symbol): Properly treat - misc_symbol_hash entries without values. - -2020-08-25 Alan Modra - - PR 26500 - * config/tc-tic4x.c (tic4x_inst_make): Don't die on terminating - insn with name = "". - -2020-08-25 Alan Modra - - PR 26441 - * config/tc-cr16.c (get_b_cc): Return NULL early if op isn't - two or three chars, and don't bother copying. - -2020-08-25 Alan Modra - - PR 26426 - * config/tc-arm.c (do_neon_mvn, do_neon_swp): Bail out on - NS_NULL shape. - -2020-08-25 Alan Modra - - PR 26410 - * symbols.c (dollar_label_count, dollar_label_max): Make size_t. - (dollar_label_clear): Don't call memset with NULL pointer. - -2020-08-25 Alan Modra - - * config/tc-arc.c (declare_register_set): Avoid false positive - format-overflow warning. - * config/tc-epiphany.c (md_assemble): Likewise. - * config/tc-mips.c (md_begin): Likewise. - * config/tc-mmix.c (mmix_md_begin): Likewise. - * config/tc-nds32.c (nds32_elf_append_relax_relocs): Avoid false - positive "may be used uninitialized" warning. - -2020-08-24 Cooper Qu - - * config/tc-csky.c (csky_archs): Add item for CK860, - change ck810 and ck807's arch_flag. - (csky_cpus): Add item for CK860. - (md_begin): Enable DSP for CK810 and CK807 by default. - (md_apply_fix): Fix CKCORE_TLS_IE32 relocation failure. - * testsuite/gas/csky/cskyv2_all.d: Change 'sync 0' to 'sync'. - * testsuite/gas/csky/cskyv2_all.s: Likewise. - * testsuite/gas/csky/cskyv2_ck860.d: New. - * testsuite/gas/csky/cskyv2_ck860.s: New. - * testsuite/gas/csky/enhance_dsp.d: Change plsli.u16 to plsli.16. - * testsuite/gas/csky/enhance_dsp.s: Likewise. - -2020-08-24 Alan Modra - - * config/tc-tic54x.c (stag_add_field_symbols): Don't free "name" - in case where it isn't copied. - * config/tc-tic54x.h (LOCAL_LABELS_FB): Undef. - * testsuite/gas/tic54x/field.d: Dump section contents and symbols - rather than disassembling. - * testsuite/gas/tic54x/set.d: Adjust for newer disassembly. - -2020-08-24 Alan Modra - - * config/tc-aarch64.c (md_begin): Don't bother checking for - out of memory failure from str_htab_create. - * config/tc-arc.c (arc_insert_opcode, md_begin): Likewise. - (arc_extcorereg, arc_stralloc): Likewise. - * config/tc-arm.c (md_begin): Likewise. - * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise. - * config/tc-cris.c (md_begin): Likewise. - * config/tc-crx.c (md_begin): Likewise. - * config/tc-pdp11.c (md_begin): Likewise. - * config/tc-score.c (s3_build_reg_hsh, s3_begin): Likewise. - * config/tc-score7.c (s7_build_reg_hsh, s7_begin): Likewise. - -2020-08-24 Alan Modra - - * config/tc-arm.c (move_or_literal_pool): Avoid false positive - "may be used uninitialised". - (opcode_lookup): Likewise. - -2020-08-24 Alan Modra - - PR 26526 - * symbols.c (local_symbol_convert): Clear out xtra. - -2020-08-21 Cooper Qu - - * config/tc-csky.c (CSKY_ISA_803R2): New. - (csky_archs): Add ck803r2 series. - (md_begin): Fix warning about -medsp. - (csky_get_freg_val): Support lowercase of fpu register name. - * testsuite/gas/csky/cskyv2_ck803r2.s: New file. - * testsuite/gas/csky/cskyv2_ck803r2.d: New file. - -2020-08-23 Alan Modra - - PR 26513 - * hash.h (htab_insert): Update prototype and comment. - (struct string_tuple): Make "value" a const void*. - (string_tuple_alloc): Likewise. - (str_hash_find, str_hash_find_n): Cast returned value. - (str_hash_insert): Add "replace" parameter, and return slot pointer. - Free alloc'd element when not inserted. - * hash.c (htab_insert): Likewise. Return slot when element exists, - otherwise return NULL. - * read.c (pop_insert): Insert into hash table without first searching. - * config/tc-avr.c (md_begin): Likewise. - * config/tc-msp430.c (md_begin): Likewise. - * config/tc-nds32.c (nds32_init_nds32_pseudo_opcodes): Likewise. - * config/tc-v850.c (md_begin): Likewise. - * macro.c (do_formals, define_macro, macro_expand_body): Likewise. - (delete_macro): Delete from hash table. - * config/tc-tic54x.c (subsym_create_or_replace): Correct logic. - - * symbols.c (local_symbol_make, symbol_table_insert): Allow - replacement of hash table entries. - * config/obj-coff-seh.c (seh_hash_insert): Likewise. - * config/obj-coff.c (tag_insert): Likewise. - * config/tc-iq2000.c (iq2000_add_macro): Likewise. - * config/tc-m68k.c (md_begin): Likewise for aliases. - * config/tc-tic4x.c (tic4x_asg): Likewise. - * config/tc-tic6x.c (md_begin): Likewise. - - * dw2gencfi.c (dwcfi_hash_find_or_make): Disallow replacement of - hash table entries. - * ecoff.c (add_string, get_tag): Likewise. - * macro.c (expand_irp): Likewise. - * config/obj-elf.c (build_additional_section_info): Likewise. - * config/tc-aarch64.c (insert_reg_alias): Likewise. - (checked_hash_insert): Likewise. - * config/tc-alpha.c (get_alpha_reloc_tag, md_begin): Likewise. - * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise. - (declare_addrtype, md_begin, arc_extcorereg): Likewise. - * config/tc-arm.c (insert_reg_alias): Likewise. - (arm_tc_equal_in_insn, md_begin): Likewise. - * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise. - * config/tc-cris.c (md_begin): Likewise. - * config/tc-crx.c (md_begin): Likewise. - * config/tc-csky.c (md_begin): Likewise. - * config/tc-d10v.c (md_begin): Likewise. - * config/tc-dlx.c (md_begin): Likewise. - * config/tc-ft32.c (md_begin): Likewise. - * config/tc-h8300.c (md_begin): Likewise. - * config/tc-hppa.c (md_begin): Likewise. - * config/tc-i386.c (md_begin): Likewise. - * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise. - (md_begin, dot_alias): Likewise. - * config/tc-m68hc11.c (md_begin): Likewise. - * config/tc-m68k.c (md_begin): Likewise. - * config/tc-mcore.c (md_begin): Likewise. - * config/tc-microblaze.c (md_begin): Likewise. - * config/tc-mips.c (md_begin): Likewise. - * config/tc-mmix.c (md_begin): Likewise. - * config/tc-mn10200.c (md_begin): Likewise. - * config/tc-mn10300.c (md_begin): Likewise. - * config/tc-moxie.c (md_begin): Likewise. - * config/tc-nds32.c (nds32_relax_hint, md_begin): Likewise. - * config/tc-nios2.c (md_begin): Likewise. - * config/tc-ns32k.c (md_begin): Likewise. - * config/tc-pdp11.c (md_begin): Likewise. - * config/tc-pj.c (fake_opcode, md_begin): Likewise. - * config/tc-ppc.c (ppc_setup_opcodes): Likewise. - * config/tc-pru.c (md_begin): Likewise. - * config/tc-riscv.c (init_ext_version_hash): Likewise. - (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise. - (riscv_init_csr_hash): Likewise. - * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise. - * config/tc-score.c (s3_insert_reg): Likewise. - (s3_build_score_ops_hsh, s3_build_dependency_insn_hsh): Likewise. - * config/tc-score7.c (s7_build_score_ops_hsh): Likewise. - (s7_build_dependency_insn_hsh, s7_insert_reg): Likewise. - * config/tc-sh.c (md_begin): Likewise. - * config/tc-sparc.c (md_begin): Likewise. - * config/tc-spu.c (md_begin): Likewise. - * config/tc-tic30.c (md_begin): Likewise. - * config/tc-tic4x.c (tic4x_inst_insert): Likewise. - * config/tc-tic54x.c (stag_add_field_symbols, md_begin): Likewise. - (tic54x_endstruct, tic54x_var, tic54x_macro_info): Likewise. - (subsym_substitute): Likewise. - * config/tc-tilegx.c (md_begin): Likewise. - * config/tc-tilepro.c (md_begin): Likewise. - * config/tc-vax.c (vip_begin): Likewise. - * config/tc-wasm32.c (md_begin): Likewise. - * config/tc-xgate.c (md_begin): Likewise. - * config/tc-z8k.c (md_begin): Likewise. - * testsuite/gas/ppc/dcbt.d, - * testsuite/gas/ppc/dcbt.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - - * ecoff.c (add_string): Report fatal error on duplicates. - * config/tc-alpha.c (md_begin): Likewise. - * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise. - (declare_addrtype, md_begin, arc_extcorereg): Likewise. - * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise. - * config/tc-cris.c (md_begin): Likewise. - * config/tc-crx.c (md_begin): Likewise. - * config/tc-dlx.c (md_begin): Likewise. - * config/tc-hppa.c (md_begin): Likewise. - * config/tc-i386.c (md_begin): Likewise. - * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise. - (md_begin): Likewise. - * config/tc-m68k.c (md_begin): Likewise. - * config/tc-mips.c (md_begin): Likewise. - * config/tc-nios2.c (md_begin): Likewise. - * config/tc-ns32k.c (md_begin): Likewise. - * config/tc-ppc.c (ppc_setup_opcodes): Likewise. - * config/tc-pru.c (md_begin): Likewise. - * config/tc-riscv.c (init_ext_version_hash): Likewise. - (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise. - * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise. - * config/tc-sparc.c (md_begin): Likewise. - * config/tc-tic30.c (md_begin): Likewise. - * config/tc-tic4x.c (tic4x_inst_insert): Likewise. - * config/tc-tilegx.c (md_begin): Likewise. - * config/tc-tilepro.c (md_begin): Likewise. - * config/tc-vax.c (vip_begin): Likewise. - - * config/tc-alpha.c, - * config/tc-arm.c, - * config/tc-avr.c, - * config/tc-cr16.c, - * config/tc-csky.c, - * config/tc-i386.c, - * config/tc-m68hc11.c, - * config/tc-m68k.c, - * config/tc-microblaze.c, - * config/tc-ns32k.c, - * config/tc-pj.c, - * config/tc-ppc.c, - * config/tc-score.c, - * config/tc-score7.c, - * config/tc-tic4x.c, - * config/tc-tic54x.c, - * config/tc-tilegx.c, - * config/tc-tilepro.c, - * config/tc-xgate.c: Formatting. - -2020-08-21 Alan Modra - - * symbols.c (struct local_symbol): Add "hash" entry. Reorder fields. - Delete union. Adjust code throughout file. - (struct symbol): Add "hash", "name" and "x" entries. Reorder fields. - Split off some to.. - (struct xsymbol): ..this. New struct. Adjust code throughout file - accessing these fields. - (struct symbol_entry): Delete. - (union symbol_entry): New. - (hash_symbol_entry): Adjust for symbol_entry_t change. - (symbol_entry_find): Likewise. - (eq_symbol_entry): Compare hash values too. - (symbol_entry_alloc): Delete. - (local_symbol_converted_p, local_symbol_mark_converted): Delete. - (local_symbol_get_real_symbol, local_symbol_set_real_symbol): Delete. - (local_hash): Delete. - (abs_symbol_x, dot_symbol_x): New static var. - (symbol_init): New function. - (symbol_create): Rewrite. - (LOCAL_SYMBOL_CHECK): Delete. Replace uses throughout with simple - test of flags.local_symbol. - (local_symbol_make): Adjust for struct local_symbol changes. - (local_symbol_convert): Rewrite. Adjust all callers. - (symbol_table_insert): Simplify. - (symbol_clone): Comment on local sym cloning. Handle split symbol - struct. - (get_real_sym): Delete. Remove all uses. - (symbol_find_exact_noref): Simplify. - (resolve_local_symbol): Don't resolve non-locals. - (S_SET_SEGMENT): Don't special case reg_section. - (S_SET_NAME): Set both name and bsym->name. - (symbol_mark_resolved, symbol_resolved_p): Simplify. - (symbol_symbolS): Update comment. - (symbol_begin): Don't create local_hash. Adjust abs_symbol setup. - (dot_symbol_init): Adjust dot_symbol setup. - (symbol_print_statistics): Delete local_hash stats. - -2020-08-21 Alan Modra - - * symbols.c (struct symbol_flags): Rename sy_volatile to volatil, - and remove sy_ from other field names. Update throughout. - (struct symbol): Remove sy_ from field names. Delete unused - TARGET_SYMBOL_FIELDS. Update throughout file. Move after.. - (struct local_symbol): ..here. Remove lsy_ from field names. - Delete unused TC_LOCAL_SYMFIELD_TYPE. Update throughout file. - (local_symbol_resolved_p, local_symbol_mark_resolved): Delete. - Expand uses throughout file. - (local_symbol_get_frag, local_symbol_set_frag): Likewise. - (symbol_new): Move symbol_table_frozen test to.. - (symbol_append): ..here, and.. - (symbol_insert): ..here. - (resolve_symbol_value, symbol_relc_make_expr): White space fixes. - (HANDLE_XADD_OPT1, HANDLE_XADD_OPT2): Likewise. - * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Update. - -2020-08-21 Alan Modra - - * symbols.h (symbol_new, symbol_create, local_symbol_make), - (symbol_temp_new): Arrange params as section, frag, offset. - * symbols.c: Adjust to suit. - * as.c: Likewise. - * cgen.c: Likewise. - * dwarf2dbg.c: Likewise. - * ecoff.c: Likewise. - * expr.c: Likewise. - * itbl-ops.c: Likewise. - * read.c: Likewise. - * stabs.c: Likewise. - * subsegs.c: Likewise. - * config/obj-coff.c: Likewise. - * config/obj-elf.c: Likewise. - * config/obj-macho.c: Likewise. - * config/tc-aarch64.c: Likewise. - * config/tc-alpha.c: Likewise. - * config/tc-arc.c: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-avr.c: Likewise. - * config/tc-cr16.c: Likewise. - * config/tc-cris.c: Likewise. - * config/tc-csky.c: Likewise. - * config/tc-dlx.c: Likewise. - * config/tc-hppa.c: Likewise. - * config/tc-i386.c: Likewise. - * config/tc-ia64.c: Likewise. - * config/tc-m32r.c: Likewise. - * config/tc-m68k.c: Likewise. - * config/tc-mips.c: Likewise. - * config/tc-mmix.c: Likewise. - * config/tc-mn10200.c: Likewise. - * config/tc-mn10300.c: Likewise. - * config/tc-nds32.c: Likewise. - * config/tc-nios2.c: Likewise. - * config/tc-ppc.c: Likewise. - * config/tc-riscv.c: Likewise. - * config/tc-s390.c: Likewise. - * config/tc-sh.c: Likewise. - * config/tc-tic4x.c: Likewise. - * config/tc-tic54x.c: Likewise. - * config/tc-xtensa.c: Likewise. - -2020-08-21 Cooper Qu - - * config/tc-csky.c (csky_insn_info): Add member last_isize. - (md_assemble): Assign value to csky_insn.last_isize. - * testsuite/gas/csky/enhance_dsp.d: Test bloop's two operands form. - * testsuite/gas/csky/enhance_dsp.s: Likewise. - -2020-08-20 Martin Liska - - * NEWS: Mention --reduce-memory-overheads and --hash-size arguments - options. - * as.c: Remove the options from help. - * doc/as.texi: Remove options. - * doc/internals.texi: Remove hash from documentation. - * hash.c (struct hash_entry): Remove. - (struct hash_control): Likewise. - (set_gas_hash_table_size): Likewise. - (hash_new_sized): Likewise. - (hash_new): Likewise. - (hash_die): Likewise. - (hash_lookup): Likewise. - (hash_insert): Likewise. - (hash_jam): Likewise. - (hash_replace): Likewise. - (hash_find): Likewise. - (hash_find_n): Likewise. - (hash_delete): Likewise. - (hash_traverse): Likewise. - (hash_print_statistics): Likewise. - (TABLES): Likewise. - (STATBUFSIZE): Likewise. - (main): Likewise. - (what): Likewise. - (destroy): Likewise. - (applicatee): Likewise. - (whattable): Likewise. - * hash.h (struct hash_control): Likewise. - (set_gas_hash_table_size): Likewise. - (hash_new): Likewise. - (hash_new_sized): Likewise. - (hash_die): Likewise. - (hash_insert): Likewise. - (hash_jam): Likewise. - (hash_replace): Likewise. - (hash_find): Likewise. - (hash_find_n): Likewise. - (hash_delete): Likewise. - (hash_traverse): Likewise. - (hash_print_statistics): Likewise. - -2020-08-20 Martin Liska - - * config/obj-coff-seh.c (seh_hash_insert): Port to use new - str_htab type. - (seh_hash_find): Likewise. - (seh_hash_find_or_make): Likewise. - * config/obj-coff.c (tag_init): Likewise. - (tag_insert): Likewise. - (tag_find): Likewise. - * config/obj-elf.c (struct group_list): Likewise. - (build_additional_section_info): Likewise. - (free_section_idx): Likewise. - (elf_adjust_symtab): Likewise. - (elf_frob_file_after_relocs): Likewise. - * config/tc-aarch64.c (INSN_SIZE): Likewise. - (parse_reg): Likewise. - (insert_reg_alias): Likewise. - (create_register_alias): Likewise. - (s_unreq): Likewise. - (parse_shift): Likewise. - (parse_pldop): Likewise. - (parse_barrier): Likewise. - (parse_barrier_psb): Likewise. - (parse_bti_operand): Likewise. - (parse_sys_reg): Likewise. - (parse_sys_ins_reg): Likewise. - (lookup_mnemonic): Likewise. - (opcode_lookup): Likewise. - (parse_operands): Likewise. - (checked_hash_insert): Likewise. - (sysreg_hash_insert): Likewise. - (fill_instruction_hash_table): Likewise. - (md_begin): Likewise. - * config/tc-alpha.c (struct alpha_reloc_tag): Likewise. - (get_alpha_reloc_tag): Likewise. - (assemble_tokens_to_insn): Likewise. - (assemble_tokens): Likewise. - (md_begin): Likewise. - * config/tc-arc.c (arc_find_opcode): Likewise. - (arc_insert_opcode): Likewise. - (find_opcode_match): Likewise. - (declare_register): Likewise. - (declare_addrtype): Likewise. - (md_begin): Likewise. - (arc_parse_name): Likewise. - (tc_arc_regname_to_dw2regnum): Likewise. - (arc_extcorereg): Likewise. - * config/tc-arm.c (MVE_BAD_QREG): Likewise. - (arm_reg_parse_multi): Likewise. - (parse_reloc): Likewise. - (insert_reg_alias): Likewise. - (create_register_alias): Likewise. - (s_unreq): Likewise. - (parse_shift): Likewise. - (parse_psr): Likewise. - (parse_cond): Likewise. - (parse_barrier): Likewise. - (do_vfp_nsyn_opcode): Likewise. - (opcode_lookup): Likewise. - (arm_tc_equal_in_insn): Likewise. - (md_begin): Likewise. - * config/tc-avr.c (md_begin): Likewise. - (avr_ldi_expression): Likewise. - (md_assemble): Likewise. - (avr_update_gccisr): Likewise. - (avr_emit_insn): Likewise. - * config/tc-cr16.c (get_register): Likewise. - (get_register_pair): Likewise. - (get_index_register): Likewise. - (get_index_register_pair): Likewise. - (get_pregister): Likewise. - (get_pregisterp): Likewise. - (initialise_reg_hash_table): Likewise. - (md_begin): Likewise. - (cr16_assemble): Likewise. - (md_assemble): Likewise. - * config/tc-cris.c (cris_insn_first_word_frag): Likewise. - (md_begin): Likewise. - (cris_process_instruction): Likewise. - * config/tc-crx.c (get_register): Likewise. - (get_copregister): Likewise. - (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-csky.c (md_begin): Likewise. - (parse_opcode): Likewise. - (get_operand_value): Likewise. - (v1_work_jbsr): Likewise. - (v2_work_rotlc): Likewise. - (v2_work_bgeni): Likewise. - (v2_work_not): Likewise. - * config/tc-d10v.c (sizeof): Likewise. - (md_begin): Likewise. - (do_assemble): Likewise. - (md_apply_fix): Likewise. - * config/tc-d30v.c (sizeof): Likewise. - (md_begin): Likewise. - (do_assemble): Likewise. - * config/tc-dlx.c (RELOC_DLX_VTENTRY): Likewise. - (md_begin): Likewise. - (machine_ip): Likewise. - * config/tc-ft32.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-h8300.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-hppa.c (pa_ip): Likewise. - (md_begin): Likewise. - * config/tc-i386.c (md_begin): Likewise. - (i386_print_statistics): Likewise. - (parse_insn): Likewise. - (process_operands): Likewise. - (i386_index_check): Likewise. - (parse_real_register): Likewise. - * config/tc-ia64.c (dot_rot): Likewise. - (dot_entry): Likewise. - (declare_register): Likewise. - (md_begin): Likewise. - (ia64_parse_name): Likewise. - (md_assemble): Likewise. - (dot_alias): Likewise. - (do_alias): Likewise. - (ia64_adjust_symtab): Likewise. - (do_secalias): Likewise. - (ia64_frob_file): Likewise. - * config/tc-m68hc11.c (m68hc11_print_statistics): Likewise. - (md_begin): Likewise. - (print_insn_format): Likewise. - (md_assemble): Likewise. - * config/tc-m68k.c (tc_gen_reloc): Likewise. - (m68k_ip): Likewise. - (md_begin): Likewise. - * config/tc-mcore.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-microblaze.c (md_begin): Likewise. - (md_assemble): Likewise. - (md_apply_fix): Likewise. - * config/tc-mips.c (nopic_need_relax): Likewise. - (md_begin): Likewise. - (macro_build): Likewise. - (mips16_macro_build): Likewise. - (mips_lookup_insn): Likewise. - (mips_ip): Likewise. - (mips16_ip): Likewise. - * config/tc-mmix.c (sizeof): Likewise. - (mmix_md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-mn10200.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-mn10300.c (HAVE_AM30): Likewise. - (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-moxie.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-msp430.c (md_begin): Likewise. - (msp430_operands): Likewise. - (md_assemble): Likewise. - * config/tc-nds32.c (PV_DONT_CARE): Likewise. - (builtin_isreg): Likewise. - (builtin_regnum): Likewise. - (nds32_init_nds32_pseudo_opcodes): Likewise. - (nds32_lookup_pseudo_opcode): Likewise. - (nds32_relax_hint): Likewise. - (md_begin): Likewise. - (nds32_find_reloc_table): Likewise. - (nds32_elf_append_relax_relocs_traverse): Likewise. - (nds32_relax_branch_instructions): Likewise. - (md_convert_frag): Likewise. - (nds32_elf_analysis_relax_hint): Likewise. - (tc_nds32_regname_to_dw2regnum): Likewise. - * config/tc-nios2.c (nios2_opcode_lookup): Likewise. - (nios2_reg_lookup): Likewise. - (nios2_ps_lookup): Likewise. - (md_begin): Likewise. - * config/tc-ns32k.c (struct hash_control): Likewise. - (parse): Likewise. - (md_begin): Likewise. - * config/tc-pdp11.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-pj.c (fake_opcode): Likewise. - (alias): Likewise. - (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-ppc.c (ppc_setup_opcodes): Likewise. - (md_assemble): Likewise. - * config/tc-pru.c (pru_opcode_lookup): Likewise. - (pru_reg_lookup): Likewise. - (md_begin): Likewise. - (md_end): Likewise. - * config/tc-riscv.c (init_ext_version_hash): Likewise. - (riscv_get_default_ext_version): Likewise. - (riscv_set_arch): Likewise. - (init_opcode_names_hash): Likewise. - (opcode_name_lookup): Likewise. - (enum reg_class): Likewise. - (hash_reg_name): Likewise. - (riscv_init_csr_hash): Likewise. - (reg_csr_lookup_internal): Likewise. - (reg_lookup_internal): Likewise. - (init_opcode_hash): Likewise. - (md_begin): Likewise. - (DECLARE_CSR): Likewise. - (macro_build): Likewise. - (riscv_ip): Likewise. - * config/tc-s390.c (register_name): Likewise. - (s390_setup_opcodes): Likewise. - (md_begin): Likewise. - (md_assemble): Likewise. - (s390_insn): Likewise. - * config/tc-score.c (struct s3_reg_map): Likewise. - (s3_score_reg_parse): Likewise. - (s3_dependency_type_from_insn): Likewise. - (s3_parse_16_32_inst): Likewise. - (s3_parse_48_inst): Likewise. - (s3_insert_reg): Likewise. - (s3_build_reg_hsh): Likewise. - (s3_build_score_ops_hsh): Likewise. - (s3_build_dependency_insn_hsh): Likewise. - (s3_begin): Likewise. - * config/tc-score7.c (struct s7_reg_map): Likewise. - (s7_score_reg_parse): Likewise. - (s7_dependency_type_from_insn): Likewise. - (s7_parse_16_32_inst): Likewise. - (s7_build_score_ops_hsh): Likewise. - (s7_build_dependency_insn_hsh): Likewise. - (s7_insert_reg): Likewise. - (s7_build_reg_hsh): Likewise. - (s7_begin): Likewise. - * config/tc-sh.c (EMPTY): Likewise. - (md_begin): Likewise. - (find_cooked_opcode): Likewise. - * config/tc-sparc.c (md_begin): Likewise. - (sparc_ip): Likewise. - * config/tc-spu.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-tic30.c (md_begin): Likewise. - (tic30_operand): Likewise. - (tic30_parallel_insn): Likewise. - (md_assemble): Likewise. - * config/tc-tic4x.c (TIC4X_ALT_SYNTAX): Likewise. - (tic4x_asg): Likewise. - (tic4x_inst_insert): Likewise. - (tic4x_inst_add): Likewise. - (md_begin): Likewise. - (tic4x_operand_parse): Likewise. - (md_assemble): Likewise. - * config/tc-tic54x.c (MAX_SUBSYM_HASH): Likewise. - (stag_add_field_symbols): Likewise. - (tic54x_endstruct): Likewise. - (tic54x_tag): Likewise. - (tic54x_remove_local_label): Likewise. - (tic54x_clear_local_labels): Likewise. - (tic54x_var): Likewise. - (tic54x_macro_start): Likewise. - (tic54x_macro_info): Likewise. - (tic54x_macro_end): Likewise. - (subsym_isreg): Likewise. - (subsym_structsz): Likewise. - (md_begin): Likewise. - (is_mmreg): Likewise. - (is_type): Likewise. - (encode_condition): Likewise. - (encode_cc3): Likewise. - (encode_cc2): Likewise. - (encode_operand): Likewise. - (tic54x_parse_insn): Likewise. - (tic54x_parse_parallel_insn_firstline): Likewise. - (subsym_create_or_replace): Likewise. - (subsym_lookup): Likewise. - (subsym_substitute): Likewise. - (tic54x_undefined_symbol): Likewise. - * config/tc-tic6x.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-tilegx.c (O_hw2_last_plt): Likewise. - (INSERT_SPECIAL_OP): Likewise. - (md_begin): Likewise. - (tilegx_parse_name): Likewise. - (parse_reg_expression): Likewise. - (md_assemble): Likewise. - * config/tc-tilepro.c (O_tls_ie_load): Likewise. - (INSERT_SPECIAL_OP): Likewise. - (tilepro_parse_name): Likewise. - (parse_reg_expression): Likewise. - (md_assemble): Likewise. - * config/tc-v850.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-vax.c (md_ri_to_chars): Likewise. - (vip_begin): Likewise. - (vip): Likewise. - (main): Likewise. - (md_begin): Likewise. - * config/tc-wasm32.c (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-xgate.c (xgate_parse_operand): Likewise. - (md_begin): Likewise. - (md_assemble): Likewise. - * config/tc-z8k.c (md_begin): Likewise. - (md_assemble): Likewise. - -2020-08-20 Martin Liska - - * dw2gencfi.c (dwcfi_hash_insert): Use htab_t and str_hash_* - functions. - (dwcfi_hash_find): Likewise. - (dwcfi_hash_find_or_make): Likewise. - -2020-08-20 Martin Liska - - * ecoff.c (INIT_VARRAY): Use htab_t. - (add_string): Likewise. - (ecoff_read_begin_hook): Use new str_htab_create. - (get_tag): Use htab_t. - (add_file): Likewise. - -2020-08-20 Martin Liska - - * hash.h (struct string_tuple): New. - (hash_string_tuple): Likewise. - (eq_string_tuple): Likewise. - (string_tuple_alloc): Likewise. - (str_hash_find): Likewise. - (str_hash_find_n): Likewise. - (str_hash_delete): Likewise. - (str_hash_insert): Likewise. - (str_htab_create): Likewise. - -2020-08-20 Martin Liska - - * symbols.c (struct symbol_entry): New. - (hash_symbol_entry): Likewise. - (eq_symbol_entry): Likewise. - (symbol_entry_alloc): Likewise. - (symbol_entry_find): Likewise. - (local_symbol_make): Use htab hash table. - (local_symbol_convert): Likewise. - (symbol_table_insert): Likewise. - (symbol_find_exact_noref): Likewise. - (resolve_local_symbol): Likewise. - (resolve_local_symbol_values): Likewise. - (symbol_begin): Likewise. - (symbol_print_statistics): Likewise. - -2020-08-20 Martin Liska - - * read.c (struct po_entry): New. - (hash_po_entry): Likewise. - (eq_po_entry): Likewise. - (po_entry_alloc): Likewise. - (po_entry_find): Likewise. - (pop_insert): Likewise. - (pobegin): Use htab hash table. - (read_a_source_file): Likewise. - (s_macro): Likewise. - (read_print_statistics): Likewise. - * config/tc-m68k.c (m68k_conditional_pseudoop): Add const qualifier. - * config/tc-m68k.h (m68k_conditional_pseudoop): Likewise. - -2020-08-20 Martin Liska - - * config/tc-iq2000.c (iq2000_add_macro): Use htab hash table. - * macro.c (struct hash_control): Use htab. - (macro_init): Likewise. - (do_formals): Likewise. - (free_macro): Likewise. - (define_macro): Likewise. - (sub_actual): Likewise. - (macro_expand_body): Likewise. - (macro_expand): Likewise. - (check_macro): Likewise. - (delete_macro): Likewise. - (expand_irp): Likewise. - * macro.h (struct macro_hash_entry): New struct. - (hash_macro_entry): New. - (eq_macro_entry): Likewise. - (macro_entry_alloc): Likewise. - (macro_entry_find): Likewise. - (struct formal_hash_entry): Likewise. - (hash_formal_entry): Likewise. - (eq_formal_entry): Likewise. - (formal_entry_alloc): Likewise. - (formal_entry_find): Likewise. - -2020-08-20 Martin Liska - - * as.h: Include hashtab.h. - * hash.c (htab_insert): New. - (htab_print_statistics): Likewise. - * hash.h (htab_insert): Likewise. - (htab_print_statistics): Likewise. - -2020-08-19 Alan Modra - - * testsuite/gas/ppc/int128.s: Correct vcmpuq. - * testsuite/gas/ppc/int128.d: Update. - * testsuite/gas/ppc/xvtlsbb.d: Update. - -2020-08-18 Peter Bergner - - * testsuite/gas/ppc/vsx4.s: Update test to use new mnemonic. - * testsuite/gas/ppc/vsx4.d: Likewise. - -2020-08-17 Alex Coplan - - * config/obj-elf.c (obj_elf_change_section): When repurposing an - existing symbol, ensure that we set sy_value as per other (fresh) - section symbols. - * testsuite/gas/elf/elf.exp: Add new test. - * testsuite/gas/elf/section-symbol-redef.d: New test. - * testsuite/gas/elf/section-symbol-redef.s: Input for test. - -2020-08-13 Nick Clifton - - PR 26359 - * config/obj-som.c (obj_som_init_stab_section): Do nothing if the - $GDB_DEBUG$ section has already been created. - -2020-08-12 Joe Ramsay - - * config/tc-arm.c (do_neon_cvt_1): Parse vcvtne as vcvt-ne for - NS_FD shape when MVE is present - * testsuite/gas/arm/mve-vcvtne-it-bad.d: New test. - * testsuite/gas/arm/mve-vcvtne-it-bad.l: New test. - * testsuite/gas/arm/mve-vcvtne-it-bad.s: New test. - * testsuite/gas/arm/mve-vcvtne-it.d: New test. - * testsuite/gas/arm/mve-vcvtne-it.s: New test. - -2020-08-12 Alex Coplan - - * testsuite/gas/aarch64/mpam-bad.d: New test. - * testsuite/gas/aarch64/mpam-bad.l: Error output. - * testsuite/gas/aarch64/mpam-bad.s: Input. - * testsuite/gas/aarch64/mpam.d: New test. - * testsuite/gas/aarch64/mpam.s: Input. - -2020-08-12 Nick Clifton - - PR 26346 - * doc/c-riscv.texi (RISC-V-Options): Fix typo in the description - of the -mno-csr-check option. - -2020-08-12 Nick Clifton - - * po/ru.po: Updated Russian translation. - -2020-08-10 Alex Coplan - - * config/tc-aarch64.c (parse_sys_reg): Don't assert when parsing - a long system register. - (parse_sys_ins_reg): Likewise. - (sysreg_hash_insert): New. - (md_begin): Use sysreg_hash_insert() to ensure all system - registers are no longer than the maximum length at startup. - * testsuite/gas/aarch64/invalid-sysreg-assert.d: New test. - * testsuite/gas/aarch64/invalid-sysreg-assert.l: Error output. - * testsuite/gas/aarch64/invalid-sysreg-assert.s: Input. - -2020-08-10 Przemyslaw Wirkus - - * config/tc-aarch64.c (parse_sys_reg): Call to - aarch64_sys_ins_reg_supported_p instead of - aarch64_sys_reg_supported_p. - (parse_sys_ins_reg): Add aarch64_sys_reg_deprecated_p check. - * testsuite/gas/aarch64/illegal-sysreg-5.d: New test. - * testsuite/gas/aarch64/illegal-sysreg-5.l: New test. - * testsuite/gas/aarch64/sysreg-5.s: New test. - -2020-08-10 Alan Modra - - * testsuite/gas/ppc/power8.d, - * testsuite/gas/ppc/power8.s: Add miso. - * testsuite/gas/ppc/power9.d, - * testsuite/gas/ppc/power8.s: Add exser, msgsndu, msgclru. - -2020-08-10 Alan Modra - - * testsuite/gas/ppc/power8.d: Update. - * testsuite/gas/ppc/vsx2.d: Update. - -2020-08-10 Alan Modra - - * config/tc-ppc.c (md_assemble): Error for lmw, stmw, lswi, lswx, - stswi, or stswx in little-endian mode. - * testsuite/gas/ppc/476.d, - * testsuite/gas/ppc/476.s: Delete lmw, stmw, lswi, lswx, stswi, stswx. - * testsuite/gas/ppc/a2.d, - * testsuite/gas/ppc/a2.s: Move lmw, stmw, lswi, lswx, stswi, stswx.. - * testsuite/gas/ppc/be.d, - * testsuite/gas/ppc/be.s: ..to here, new big-endian only test. - * testsuite/gas/ppc/le_error.d, - * testsuite/gas/ppc/le_error.l: New little-endian test. - * testsuite/gas/ppc/ppc.exp: Run new tests. - -2020-08-07 H.J. Lu - - * read.c (read_a_source_file): Ignore rest of line on overflow - error. - -2020-08-06 Alex Coplan - - * read.c (read_a_source_file): Use long for local labels, detect - overflow and raise an error for overly-long labels. - * testsuite/gas/all/gas.exp: Add local-label-overflow test. - * testsuite/gas/all/local-label-overflow.d: New test. - * testsuite/gas/all/local-label-overflow.l: Error output. - * testsuite/gas/all/local-label-overflow.s: Input. - -2020-08-04 Christian Groessler - - * testsuite/gas/z8k/inout.d: Adapt to correct encoding of - "sout/soutb #imm,reg" - -2020-08-04 H.J. Lu - - * NEWS: Mention {disp16} pseudo prefix. - -2020-08-04 H.J. Lu - - * testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental - change. - -2020-08-04 Mark Wielaard - - * dwarf2dbg.c (out_debug_abbrev): When DWARF2_VERSION >= 4, use - DW_FORM_udata for DW_AT_high_pc. - (out_debug_info): Use emit_leb128_expr for DW_AT_high_pc, when - DWARF2_VERSION >= 4. - * read.c (emit_leb128_exp): No longer static. - * read.h (emit_leb128_exp): Define. - -2020-08-02 Mark Wielaard - - * dwarf2dbg.c (out_dir_and_file_list): For DWARF5 emit at - least one directory if there is at least one file. Use dirs[1] - if dirs[0] is not set, or if there is no dirs[1] the current - working directory. Use files[1] filename, when files[0] filename - isn't set. - -2020-08-02 Mark Wielaard - - * dwarf2dbg.c (out_debug_info): Emit unit type and abbrev offset - for DWARF5. - * testsuite/gas/elf/dwarf-4-cu.d: New file. - * testsuite/gas/elf/dwarf-4-cu.s: Likewise. - * testsuite/gas/elf/dwarf-5-cu.d: Likewise. - * testsuite/gas/elf/dwarf-5-cu.s: Likewise. - * testsuite/gas/elf/elf.exp: Run dwarf-4-cu and dwarf-5-cu. - -2020-08-02 Mark Wielaard - - * doc/as.texi (--gdwarf-[345]): Fix typo. - -2020-08-03 Jozef Lawrynowicz - - * config/tc-msp430.c (OPTION_MOVE_DATA): Remove. - (md_parse_option): Remove case for OPTION_MOVE_DATA. - (md_longopts): Remove "md" entry. - (md_show_usage): Likewise. - -2020-07-30 H.J. Lu - - PR gas/26305 - * config/tc-i386.c (_i386_insn::disp_encoding): Add - disp_encoding_16bit. - (parse_insn): Check Prefix_XXX for pseudo prefixes. Handle - {disp16}. - (build_modrm_byte): Handle {disp16}. - (i386_index_check): Check invalid {disp16} and {disp32} pseudo - prefixes. - * doc/c-i386.texi: Update {disp32} documentation and document - {disp16}. - * testsuite/gas/i386/i386.exp: Run x86-64-inval-pseudo. - * testsuite/gas/i386/inval-pseudo.s: Add {disp32}/{disp16} - tests. - * testsuite/gas/i386/pseudos.s: Add {disp8}/{disp32} vmovaps - tests with 128-byte displacement. Add {disp16} tests. - * testsuite/gas/i386/x86-64-pseudos.s: Add {disp8}/{disp32} - vmovaps test. Add (%r13)/(%r13d) tests. - * testsuite/gas/i386/x86-64-inval-pseudo.l: New file. - * testsuite/gas/i386/x86-64-inval-pseudo.s: Likewise. - * testsuite/gas/i386/inval-pseudo.l: Updated. - * testsuite/gas/i386/pseudos.d: Likewise. - * testsuite/gas/i386/x86-64-pseudos.d: Likewise. - -2020-07-30 Rainer Orth - - * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. - * Makefile.in, doc/Makefile.in: Regenerate. - * configure: Regenerate. - -2020-07-30 H.J. Lu - - * testsuite/gas/elf/dwarf2-3.d:Pass --gdwarf-3 to assembler. - * testsuite/gas/elf/dwarf2-5.d: Likewise. - * testsuite/gas/i386/dw2-compress-3a.d: Likewise. - * testsuite/gas/i386/dw2-compress-3b.d: Likewise. - * testsuite/gas/i386/dw2-compressed-3a.d: Likewise. - * testsuite/gas/i386/dw2-compressed-3b.d: Likewise. - -2020-07-30 Nick Clifton - - * as.c (dwarf_level): Initialise to 3 in case this is not set on - the command line. - -2020-07-29 Maciej W. Rozycki - - * testsuite/gas/mips/global-local-symtab-sort-o32.d: New test. - * testsuite/gas/mips/global-local-symtab-sort-o32t.d: New test. - * testsuite/gas/mips/global-local-symtab-sort-n32.d: New test. - * testsuite/gas/mips/global-local-symtab-sort-n32t.d: New test. - * testsuite/gas/mips/global-local-symtab-sort-n64.d: New test. - * testsuite/gas/mips/global-local-symtab-sort-n64t.d: New test. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2020-07-29 Maciej W. Rozycki - - * testsuite/gas/mips/global-local-symtab-o32.d: New test. - * testsuite/gas/mips/global-local-symtab-o32t.d: New test. - * testsuite/gas/mips/global-local-symtab-n32.d: New test. - * testsuite/gas/mips/global-local-symtab-n32t.d: New test. - * testsuite/gas/mips/global-local-symtab-n64.d: New test. - * testsuite/gas/mips/global-local-symtab.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2020-07-28 H.J. Lu - - PR gas/26305 - * config/tc-i386.c (build_modrm_byte): Use disp32/disp16 on - (%bp)/(%ebp)/(%rbp) for {disp32}. - * doc/c-i386.texi: Update {disp32} documentation. - * testsuite/gas/i386/pseudos.s: Add (%bp)/(%ebp) tests. - * testsuite/gas/i386/x86-64-pseudos.s: Add (%ebp)/(%rbp) tests. - * testsuite/gas/i386/pseudos.d: Updated. - * testsuite/gas/i386/x86-64-pseudos.d: Likewise. - -2020-07-27 H.J. Lu - - * doc/as.texi: Replace preceeded with preceded. - -2020-07-22 Maciej W. Rozycki - - * testsuite/gas/mips/jal-svr4pic-irix.d: New file. - * testsuite/gas/mips/mips1@jal-svr4pic-irix.d: New file. - * testsuite/gas/mips/mipsr6@jal-svr4pic-irix.d: New file. - * testsuite/gas/mips/micromips@jal-svr4pic-irix.d: New file. - * testsuite/gas/mips/r3000@jal-svr4pic-irix.d: New file. - * testsuite/gas/mips/jal-svr4pic-local-irix.d: New file. - * testsuite/gas/mips/mips1@jal-svr4pic-local-irix.d: New file. - * testsuite/gas/mips/micromips@jal-svr4pic-local-irix.d: New - file. - * testsuite/gas/mips/r3000@jal-svr4pic-local-irix.d: New file. - * testsuite/gas/mips/jal-svr4pic-noreorder-irix.d: New file. - * testsuite/gas/mips/mips1@jal-svr4pic-noreorder-irix.d: New - file. - * testsuite/gas/mips/mipsr6@jal-svr4pic-noreorder-irix.d: New - file. - * testsuite/gas/mips/micromips@jal-svr4pic-noreorder-irix.d: New - file. - * testsuite/gas/mips/r3000@jal-svr4pic-noreorder-irix.d: New - file. - * testsuite/gas/mips/jal-xgot-irix.d: New file. - * testsuite/gas/mips/jalr2-irix.d: New file. - * testsuite/gas/mips/micromips-branch-relax-insn32-pic-irix.d: - New file. - * testsuite/gas/mips/micromips-branch-relax-pic-irix.d: New - file. - * testsuite/gas/mips/mips-abi32-pic2-irix.d: New file. - * testsuite/gas/mips/jal-svr4pic-local.d: Don't exclude - `*-*-irix*' targets. Add source file designator. - * testsuite/gas/mips/mips1@jal-svr4pic-local.d: Don't exclude - `*-*-irix*' targets. - * testsuite/gas/mips/r3000@jal-svr4pic-local.d: Likewise. - * testsuite/gas/mips/micromips@jal-svr4pic-local.d: Likewise. - * testsuite/gas/mips/jalr2.d: Add name designator. - * testsuite/gas/mips/mips.exp: Use respective IRIX variants for - tests involving the JALR relocation throughout. - -2020-07-22 Maciej W. Rozycki - - * testsuite/gas/mips/mips.exp: Use a helper variable for - IRIX/non-IRIX test selection. - -2020-07-21 Jan Beulich - - * testsuite/gas/i386/evex-no-scale-64.d, - testsuite/gas/i386/addr32.d, - testsuite/gas/i386/x86-64-addr32-intel.d, - testsuite/gas/i386/x86-64-addr32.d: Adjust expectations. - -2020-07-21 Cooper Qu - - * config/tc-csky.c (md_begin): Fix tests of arch and mach flags. - -2020-07-21 Jan Beulich - - * testsuite/gas/i386/evex-no-scale-32.d, - testsuite/gas/i386/evex-no-scale-64.d: Add #source and #pass. - * testsuite/gas/i386/evex-no-scale-32.s, - testsuite/gas/i386/evex-no-scale-64.s: Rename / fold into ... - * testsuite/gas/i386/evex-no-scale.s: ... this. Use .struct - instead of .section. - * testsuite/gas/i386/i386.exp: Move above tests out of ELF- - specific section. - -2020-07-21 Maciej W. Rozycki - - * config/tc-mips.c (prev_reloc_op_frag): Remove variable. - (my_getSmallExpression): Adjust accordingly. - -2020-07-20 Jan Beulich - - PR gas/4572 - * config/tc-i386.c (i386_comment_chars): Drop TE_I386AIX from - conditional around it. - (md_begin): Insert backslash into operand_chars[] when slash is - a comment character. - * config/tc-i386-intel.c (i386_operator): Recognize \/, \%, and - \* as operators when / may be a comment character. - * testsuite/gas/i386/svr4.s, testsuite/gas/i386/svr4.d: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2020-07-20 Jan Beulich - - PR gas/4572 - * app.c (last_char): Drop TC_ARM conditional around it. - (struct app_save): Drop TC_ARM conditional around last_char. - (app_push, app_pop): Drop TC_ARM conditional from last_char - accesses. - (do_scrub_chars): Likewise. Drop TC_ARM conditional from - backslash-precedes-comment-character check. - -2020-07-20 Jan Beulich - - * config/tc-i386.c (frag_opcode_byte): New. - (output_branch): Emit error when in absolute section. - (output_jump, output_insn): Use frag_opcode_byte. Handle being - in absolute section. - (output_interseg_jump, output_disp, output_imm): Handle being in - absolute section. - * testsuite/gas/i386/sizing.s, - testsuite/gas/i386/sizing32.d, - testsuite/gas/i386/sizing64.d: New. - * testsuite/gas/i386/i386.exp: Run new tests. - -2020-07-20 Jan Beulich - - * testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside - is_elf_format as applicable; merely exclude iamcu tests. - -2020-07-19 H.J. Lu - - PR gas/26263 - * config/tc-i386.c (i386_validate_fix): Change PLT32 reloc - against section to PC32 reloc. - * testsuite/gas/i386/relax-5.d: Updated. - * testsuite/gas/i386/x86-64-relax-4.d: Likewise. - -2020-07-15 H.J. Lu - - PR gas/26237 - * testsuite/gas/i386/evex-no-scale-64.d: Updated. - * testsuite/gas/i386/addr32.d: Likewise. - * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise. - * testsuite/gas/i386/x86-64-addr32.d: Likewise. - -2020-07-15 Nick Clifton - - * write.c (create_note_reloc): Add desc2_size parameter. Zero out - the addend field of REL relocations. Store the full addend into - the note for REL relocations. - -2020-07-15 Jan Beulich - - * testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push - immediate. - * testsuite/gas/i386/x86-64-stack-intel.d, - testsuite/gas/i386/x86-64-stack-suffix.d, - testsuite/gas/i386/x86-64-stack.d: Adjust expectations. - -2020-07-15 Jan Beulich - - * testsuite/gas/i386/disassem.d, - testsuite/gas/i386/ilp32/x86-64-branch.d, - testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d, - testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d, - testsuite/gas/i386/noreg32.d, - testsuite/gas/i386/noreg64-rex64.d, - testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d, - testsuite/gas/i386/opcode.d, - testsuite/gas/i386/solaris/x86-64-branch-2.d, - testsuite/gas/i386/solaris/x86-64-jump.d, - testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d, - testsuite/gas/i386/solaris/x86-64-nop-3.d, - testsuite/gas/i386/solaris/x86-64-nop-4.d, - testsuite/gas/i386/solaris/x86-64-nop-5.d, - testsuite/gas/i386/solaris/x86-64-relax-2.d, - testsuite/gas/i386/solaris/x86-64-relax-3.d, - testsuite/gas/i386/x86-64-align-branch-1a.d, - testsuite/gas/i386/x86-64-align-branch-1b.d, - testsuite/gas/i386/x86-64-align-branch-1c.d, - testsuite/gas/i386/x86-64-align-branch-1d.d, - testsuite/gas/i386/x86-64-align-branch-1e.d, - testsuite/gas/i386/x86-64-align-branch-1f.d, - testsuite/gas/i386/x86-64-align-branch-1g.d, - testsuite/gas/i386/x86-64-align-branch-1h.d, - testsuite/gas/i386/x86-64-align-branch-1i.d, - testsuite/gas/i386/x86-64-align-branch-2a.d, - testsuite/gas/i386/x86-64-align-branch-2b.d, - testsuite/gas/i386/x86-64-align-branch-2c.d, - testsuite/gas/i386/x86-64-align-branch-3.d, - testsuite/gas/i386/x86-64-align-branch-4a.d, - testsuite/gas/i386/x86-64-align-branch-4b.d, - testsuite/gas/i386/x86-64-align-branch-5.d, - testsuite/gas/i386/x86-64-align-branch-6.d, - testsuite/gas/i386/x86-64-branch-2.d, - testsuite/gas/i386/x86-64-branch-3.d, - testsuite/gas/i386/x86-64-branch.d, - testsuite/gas/i386/x86-64-disassem.d, - testsuite/gas/i386/x86-64-disp32.d, - testsuite/gas/i386/x86-64-gotpcrel-no-relax.d, - testsuite/gas/i386/x86-64-gotpcrel.d, - testsuite/gas/i386/x86-64-ifunc.d, - testsuite/gas/i386/x86-64-jump.d, - testsuite/gas/i386/x86-64-lfence-byte.d, - testsuite/gas/i386/x86-64-lfence-indbr-a.d, - testsuite/gas/i386/x86-64-lfence-indbr-b.d, - testsuite/gas/i386/x86-64-lfence-indbr-c.d, - testsuite/gas/i386/x86-64-lfence-load.d, - testsuite/gas/i386/x86-64-lfence-ret-a.d, - testsuite/gas/i386/x86-64-lfence-ret-b.d, - testsuite/gas/i386/x86-64-lfence-ret-c.d, - testsuite/gas/i386/x86-64-lfence-ret-d.d, - testsuite/gas/i386/x86-64-lfence-ret-e.d, - testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d, - testsuite/gas/i386/x86-64-mpx-branch-1.d, - testsuite/gas/i386/x86-64-mpx.d, - testsuite/gas/i386/x86-64-nop-3.d, - testsuite/gas/i386/x86-64-nop-4.d, - testsuite/gas/i386/x86-64-nop-5.d, - testsuite/gas/i386/x86-64-nops-7.d, - testsuite/gas/i386/x86-64-notrack.d, - testsuite/gas/i386/x86-64-opcode.d, - testsuite/gas/i386/x86-64-relax-2.d, - testsuite/gas/i386/x86-64-relax-3.d, - testsuite/gas/i386/x86-64-relax-4.d, - testsuite/gas/i386/x86-64-rtm.d, - testsuite/gas/i386/x86-64-stack.d, - testsuite/gas/i386/x86-64-unique.d, - testsuite/gas/i386/x86_64-intel.d: Adjust expectations. - -2020-07-14 H.J. Lu - - PR gas/26237 - * testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around - address. - * testsuite/gas/i386/x86-64-addr32.s: Likewise. - * testsuite/gas/i386/addr32.d: Updated. - * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise. - * testsuite/gas/i386/x86-64-addr32.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise. - -2020-07-14 Jan Beulich - - * testsuite/gas/i386/intel.s: Use dr instead of db. - * testsuite/gas/i386/intel-intel.d: Disambiguate name. - * testsuite/gas/i386/intel.d, - testsuite/gas/i386/opcode-intel.d: Adjust expectations. - -2020-07-14 Jan Beulich - - * testsuite/gas/i386/prefix.d: Adjust expectations. - -2020-07-14 Jan Beulich - - * testsuite/gas/i386/x86-64-avx-intel.d, - testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations. - -2020-07-14 Jan Beulich - - * testsuite/gas/i386/movbe-suffix.d, - testsuite/gas/i386/x86-64-movbe-suffix.d: New. - * testsuite/gas/i386/i386.exp: Run new tests. - -2020-07-14 Jan Beulich - - * testsuite/gas/i386/crc32-suffix.d, - testsuite/gas/i386/x86-64-crc32-suffix.d: New. - * testsuite/gas/i386/i386.exp: Run new tests. - * testsuite/gas/i386/arch-10-bdver1.d, - testsuite/gas/i386/arch-10-bdver2.d, - testsuite/gas/i386/arch-10-bdver3.d, - testsuite/gas/i386/arch-10-bdver4.d, - testsuite/gas/i386/arch-10-btver1.d, - testsuite/gas/i386/arch-10-btver2.d, - testsuite/gas/i386/arch-10-lzcnt.d, - testsuite/gas/i386/arch-10-prefetchw.d, - testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d, - testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d, - testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d, - testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d, - testsuite/gas/i386/x86-64-arch-2-bdver1.d, - testsuite/gas/i386/x86-64-arch-2-bdver2.d, - testsuite/gas/i386/x86-64-arch-2-bdver3.d, - testsuite/gas/i386/x86-64-arch-2-bdver4.d, - testsuite/gas/i386/x86-64-arch-2-btver1.d, - testsuite/gas/i386/x86-64-arch-2-btver2.d, - testsuite/gas/i386/x86-64-arch-2-lzcnt.d, - testsuite/gas/i386/x86-64-arch-2-prefetchw.d, - testsuite/gas/i386/x86-64-arch-2.d, - testsuite/gas/i386/x86-64-crc32.d, - testsuite/gas/i386/x86-64-pseudos.d, - testsuite/gas/i386/x86-64-sse-noavx.d, - testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations. - -2020-07-14 Jan Beulich - - * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for - ModR/M-encoded byte register cases. - * testsuite/gas/i386/x86-64-pseudos.d, - testsuite/gas/i386/x86-64-reg-intel.d, - testsuite/gas/i386/x86-64-reg.d: Adjust expectations. - -2020-07-14 Jan Beulich - - * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for - not-ModR/M-encoded byte register cases. - * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations. - -2020-07-14 Jan Beulich - - * testsuite/gas/i386/ilp32/x86-64-arch-1.d, - testsuite/gas/i386/ilp32/x86-64-arch-2.d, - testsuite/gas/i386/ilp32/x86-64-avx-intel.d, - testsuite/gas/i386/ilp32/x86-64-avx.d, - testsuite/gas/i386/ilp32/x86-64-crc32-intel.d, - testsuite/gas/i386/ilp32/x86-64-crc32.d, - testsuite/gas/i386/ilp32/x86-64-gotpcrel.d, - testsuite/gas/i386/ilp32/x86-64-ifunc.d, - testsuite/gas/i386/ilp32/x86-64-reg-intel.d, - testsuite/gas/i386/ilp32/x86-64-reg.d, - testsuite/gas/i386/ilp32/x86-64-rep-suffix.d, - testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d, - testsuite/gas/i386/ilp32/x86-64-sse4_2.d, - testsuite/gas/i386/ilp32/x86-64-stack-intel.d, - testsuite/gas/i386/ilp32/x86-64-stack-suffix.d, - testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir - dump expectations. - -2020-07-13 H.J. Lu - - * config/tc-i386.c (offset_in_range): Remove 32-bit sign - extension. - -2020-07-13 Nick Clifton - - * po/fr.po: Updated French translation. - -2020-07-13 Alan Modra - - * testsuite/gas/elf/dwarf2-7.d: Remove most xfails. - * testsuite/gas/elf/dwarf2-12.d: Likewise. - * testsuite/gas/elf/dwarf2-13.d: Likewise. - * testsuite/gas/elf/dwarf2-14.d: Likewise. - -2020-07-11 H.J. Lu - - * config/tc-i386.c (output_insn): Check i.xstate to set - GNU_PROPERTY_X86_FEATURE_2_TMM. - * testsuite/gas/i386/i386.exp: Run x86-64-property-7, - x86-64-property-8 and x86-64-property-9. - * testsuite/gas/i386/x86-64-property-7.d: New file. - * testsuite/gas/i386/x86-64-property-7.s: Likewise. - * testsuite/gas/i386/x86-64-property-8.d: Likewise. - * testsuite/gas/i386/x86-64-property-8.s: Likewise. - * testsuite/gas/i386/x86-64-property-9.d: Likewise. - * testsuite/gas/i386/x86-64-property-9.s: Likewise. - -2020-07-10 H.J. Lu - - * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm, - has_regymm, has_regzmm and has_regtmm. Add xstate. - (md_assemble): Set i.xstate from operand types in instruction - template. - (build_modrm_byte): Updated. - (output_insn): Check i.xstate. - * testsuite/gas/i386/i386.exp: Run property-6 and - x86-64-property-6. - * testsuite/gas/i386/property-6.d: New file. - * testsuite/gas/i386/property-6.s: Updated. - * testsuite/gas/i386/x86-64-property-6.d: Likewise. - -2020-07-10 H.J. Lu - - * testsuite/gas/i386/property-5.d: Correct test name. - -2020-07-10 Lili Cui - - * NEWS: Mention support for Intel AMX instructions. - * config/tc-i386.c (i386_error): Add invalid_sib_address. - (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile. - (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile. - (match_simd_size): Add tmmword check. - (operand_type_match): Add tmmword. - (type_names): Add rTMM. - (i386_error): Add invalid_tmm_register_set. - (check_VecOperands): Handle invalid_sib_address and - invalid_tmm_register_set. - (match_template): Handle invalid_sib_address. - (build_modrm_byte): Handle non-vector SIB and zmmword. - (i386_index_check): Disallow RegIP for non-vector SIB. - (check_register): Handle zmmword. - * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile. - * testsuite/gas/i386/i386.exp: Add AMX new tests. - * testsuite/gas/i386/intel-regs.d: Add tmm. - * testsuite/gas/i386/intel-regs.s: Add tmm. - * testsuite/gas/i386/x86-64-amx-intel.d: New. - * testsuite/gas/i386/x86-64-amx-inval.l: New. - * testsuite/gas/i386/x86-64-amx-inval.s: New. - * testsuite/gas/i386/x86-64-amx.d: New. - * testsuite/gas/i386/x86-64-amx.s: New. - * testsuite/gas/i386/x86-64-amx-bad.d: New. - * testsuite/gas/i386/x86-64-amx-bad.s: New. - -2020-07-10 Tom de Vries - - * testsuite/gas/elf/dwarf2-11.d: Update expected output from - readelf's line table decoding. - * testsuite/gas/elf/dwarf2-12.d: Likewise. - * testsuite/gas/elf/dwarf2-13.d: Likewise. - * testsuite/gas/elf/dwarf2-14.d: Likewise. - * testsuite/gas/elf/dwarf2-15.d: Likewise. - * testsuite/gas/elf/dwarf2-16.d: Likewise. - * testsuite/gas/elf/dwarf2-17.d: Likewise. - * testsuite/gas/elf/dwarf2-18.d: Likewise. - * testsuite/gas/elf/dwarf2-19.d: Likewise. - * testsuite/gas/elf/dwarf2-5.d: Likewise. - * testsuite/gas/elf/dwarf2-6.d: Likewise. - * testsuite/gas/elf/dwarf2-7.d: Likewise. - -2020-07-09 H.J. Lu - - * config/tc-i386.c (output_insn): Set YMM/ZMM features for - VEX/EVEX vector instructions. - * testsuite/gas/i386/property-4.d: New file. - * testsuite/gas/i386/property-4.s: Likewise. - * testsuite/gas/i386/property-5.d: Likewise. - * testsuite/gas/i386/property-5.s: Likewise. - * testsuite/gas/i386/x86-64-property-4.d: Likewise. - * testsuite/gas/i386/x86-64-property-5.d: Likewise. - -2020-07-09 H.J. Lu - - * NEWS: Mention --enable-x86-used-note. - * configure.ac: Configure with --enable-x86-used-note by default - for Linux/x86. - * configure: Regenerated. - -2020-07-09 Alan Modra - - * config/obj-coff.h: Remove TE_PE support. - * config/tc-ppc.c: Likewise. - * config/tc-ppc.h: Likewise. - * configure.tgt: Remove powerpc PE and powerpc lynxos. - * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE - condition. - * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE. - -2020-07-08 Jan Beulich - - * testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d: - New. - * testsuite/gas/i386/i386.exp: Run new tests. - -2020-07-07 Claudiu Zissulescu - - * config/tc-arc.c (find_opcode_match): Add error messages. - * testsuite/gas/arc/add_s-err.s: Update test. - * testsuite/gas/arc/asm-errors.err: Likewise. - * testsuite/gas/arc/cpu-em-err.s: Likewise. - * testsuite/gas/arc/hregs-err.s: Likewise. - * testsuite/gas/arc/warn.s: Likewise. - -2020-07-07 H.J. Lu - - PR gas/26212 - * doc/c-i386.texi: Remove an incorrect AVX2 entry. - -2020-07-07 Alan Modra - - * testsuite/gas/all/gas.exp: Use is_xcoff_format. - * testsuite/gas/ppc/ppc.exp: Likewise. - * testsuite/gas/all/weakref1l.d: Likewise. - -2020-07-07 Nick Clifton - - * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in - expected output. - -2020-07-06 Jan Beulich - - * testsuite/gas/i386/x86-64-avx512bw-wig1.d, - testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d, - testsuite/gas/i386/x86-64-evex-wig1.d, - testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust - expectations. - -2020-07-06 Jan Beulich - - * testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests. - * testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line. - * testsuite/gas/i386/avx512f-opts-intel.d, - testsuite/gas/i386/avx512f-opts.d - testsuite/gas/i386/x86-64-avx512f-opts-intel.d - testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations. - -2020-07-06 Yuri Chornoivan - - PR 26204 - * config/tc-arm.c: Fix spelling mistake. - * config/tc-riscv.c: Likewise. - * config/tc-z80.c: Likewise. - * po/gas.pot: Regenerate. - -2020-07-06 Nick Clifton - - * po/uk.po: Updated Ukranian translation. - -2020-07-04 Nick Clifton - - * configure: Regenerate. - * po/gas.pot: Regenerate. - -2020-07-04 Nick Clifton - - * version.m4: Change version number to 2.35.50. - * configure: Regenerate. - * po/bfd.pot: Regenerate. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-07-03 Alan Modra - - PR 26028 - * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options. - -2020-07-02 H.J. Lu - - * config/tc-i386.c (build_modrm_byte): Check vexswapsources to - swap two source operands. - -2020-07-02 Nick Clifton - - * testsuite/gas/all/fill-1.d: Skip for MeP targets. - -2020-07-02 Alex Coplan - - * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't - segfault on negative chars. - * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test. - * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input. - -2020-07-02 Nick Clifton - - PR 26028 - * testsuite/gas/ia64/group-2.d: Add -T option to readelf - command line. - * testsuite/gas/ia64/unwind.d: Likewise. - * testsuite/gas/mmix/bspec-1.d: Likewise. - * testsuite/gas/mmix/bspec-2.d: Likewise. - * testsuite/gas/mmix/comment-1.d: Likewise. - * testsuite/gas/tic6x/scomm-directive-4.d: Likewise. - -2020-07-01 Alan Modra - - * config/tc-xc16x.c (md_apply_fix): Add FIXME. - -2020-07-01 Alan Modra - - * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax - in data sections, and mep. - -2020-06-30 H.J. Lu - - * NEWS: Mention x86 NaCl target support removal. - * config/tc-i386.c: Remove x86 NaCl target support. - * config/tc-i386.h: Likewise. - * configure.tgt: Likewise. - * testsuite/gas/i386/i386.exp: Likewise. - * testsuite/gas/i386/iamcu-1.d: Likewise. - * testsuite/gas/i386/iamcu-2.d: Likewise. - * testsuite/gas/i386/iamcu-3.d: Likewise. - * testsuite/gas/i386/iamcu-4.d: Likewise. - * testsuite/gas/i386/iamcu-5.d: Likewise. - * testsuite/gas/i386/k1om.d: Likewise. - * testsuite/gas/i386/l1om.d: Likewise. - -2020-06-30 Nelson Chu - - * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the - checking into riscv_csr_address. - (riscv_csr_version_check): Likewise. - (riscv_csr_address): New function. Return the suitable CSR address - after checking the ISA dependency and versions. Issue warnings if - we find any conflict and -mcsr-check is set. CSR_CLASS_F and - CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the - priv spec versions for them. - (reg_csr_lookup_internal): Call riscv_csr_address to find the - suitable CSR address. - * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11. - * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise. - * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise. - * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the - priv spec warnings here. These warnings are added by accident. - Remove them and only focus on the ISA dependency warnings. - * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since - dscratch0 and dscratch1 are regarded as the unprivileged CSR rather - than the privileged ones. - * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise. - * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR. - * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise. - * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise. - * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise. - * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise. - * testsuite/gas/riscv/csr-dw-regnums.d: Likewise. - * testsuite/gas/riscv/csr-dw-regnums.s: Likewise. - -2020-06-29 H.J. Lu - - * config/tc-i386.c (build_vex_prefix): Support VEX base opcode - length > 1. - (md_assemble): Don't process ImmExt without operands. - -2020-06-29 Hans-Peter Nilsson - - PR gas/25331 - * config/tc-mmix.c (md_assemble) : This fixup affects 1 byte, not 8. - Also, set its fx_no_overflow. - (md_convert_frag) : - Similarly this fixup affects 4 bytes, not 8 and needs its - fx_no_overflow set. - * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define. - * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test. - -2020-06-29 Alan Modra - - * config/tc-s12z.c: Use C style comments. - * config/tc-z80.c: Likewise. - * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code. - -2020-06-26 H.J. Lu - - * config/tc-i386.c (md_assemble): Process ImmExt without - operands. - -2020-06-26 H.J. Lu - - * config/tc-i386.c (check_VecOperands): Replace vecsib with sib. - Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128, - VECSIB256 and VECSIB512, respectively. - (build_modrm_byte): Replace vecsib with sib. - -2020-06-26 Jan Beulich - - * testsuite/gas/i386/nop-1-suffix.d: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2020-06-26 Pat Bernardi - - * config/tc-m68k.c (m68k_elf_gnu_attribute): New function. - (md_pseudo_table): Handle "gnu_attribute". - * doc/as.texi: Document GNU attribute for M68K. - -2020-06-25 Nick Clifton - - PR 26141 - * config/tc-arm.c (arm_force_relocation): Force resolution of - BFD_RELOC_THUMB_PCREL_BRANCH12 relocations. - * testsuite/gas/arm/plt-1.d: Adjust expected disassembly. - -2020-06-25 Jan Beulich - - * config/tc-i386.c (md_assemble): Move call to process_immext() - ... - (process_operands): ... here. - -2020-06-25 Jan Beulich - - * config/tc-i386.c (process_suffix): Skip ambiguous operand size - diagnostic when there is a sizing prefix. Switch to word/dword/ - qword encoding when there is a sizing prefix and no (explicit or - derived) suffix. - (update_imm): Handle presence of a sizing prefix. - * testsuite/gas/i386/noreg16-data32.d, - testsuite/gas/i386/noreg32-data16.d, - testsuite/gas/i386/noreg32-data16.e, - testsuite/gas/i386/noreg64-data16.d, - testsuite/gas/i386/noreg64-data16.e, - testsuite/gas/i386/noreg64-rex64.d: New. - * testsuite/gas/i386/i386.exp: Run new tests. - * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s: - Introduce and use pfx* macros. - * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit - addressing. - * testsuite/gas/i386/noreg16.d: Adjust expectations. - -2020-06-25 Jan Beulich - - * testsuite/gas/i386/avx-16bit.d, - testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d, - testsuite/gas/i386/avx512f-16bit.d, - testsuite/gas/i386/avx512f.d, - testsuite/gas/i386/evex-lig256.d, - testsuite/gas/i386/evex-lig512.d - testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d, - testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d, - testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d, - testsuite/gas/i386/sse2-16bit.d, - testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust - expectations. - -2020-06-25 Jan Beulich - - * config/tc-i386.c (md_assemble): Also reject explicit REX - prefixes with VEX and alike encoded insns. Zap consumed bits - from i.rex. - (output_insn): Don't ignore REX prefix for VEX and alike - encodings; abort() instead if encountered. - * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases - ... - * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here. - * testsuite/gas/i386/x86-64-pseudos.d, - testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations. - -2020-06-25 Jan Beulich - - * config/tc-i386.c (process_operands): Translate explicit REX - prefix into i.rex for SSE2AVX templates. - (set_rex_vrex): New helper. - (build_modrm_byte): Use it. - * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict - REX prefixes. - * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations. - -2020-06-25 Jan Beulich - - * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX - templates when there's no data size prefix. - (md_assemble): Reject data size prefix also for legacy encoded - SIMD templates. - * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s: - Uncomment previously not working line. - * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with - data16 prefix. - * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l, - testsuite/gas/i386/sse2avx.d: Adjust expectations. - -2020-06-25 Jan Beulich - - * config/tc-i386.c (build_evex_prefix): Drop early setting of - vec_length. - -2020-06-23 Nelson Chu - - * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to - explicit_priv_attr. It used to indicate CSR or priv instructions are - explictly used. - (riscv_is_priv_insn): Return True if it is a privileged instruction. - (riscv_ip): Call riscv_is_priv_insn to check whether the instruction - is privileged or not. If it is, then set explicit_priv_attr to TRUE. - (riscv_write_out_attrs): Clarification of when to generate the elf - priv spec attributes. - * testsuite/gas/riscv/attribute-11.s: Add comments. - * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol - `priv_insn_` to decide which priv instruction is expected to used. - ( is a to e.) - * testsuite/gas/riscv/attribute-14a.d: Likewise. - * testsuite/gas/riscv/attribute-14b.d: Likewise. - * testsuite/gas/riscv/attribute-14c.d: Likewise. - * testsuite/gas/riscv/attribute-14d.d: Likewise. - * testsuite/gas/riscv/attribute-14e.d: Likewise. - -2020-06-22 Nelson Chu - - * config/tc-riscv.c (buf_size, buf): Remove the unused variables. - (riscv_set_default_priv_spec): Get the priv spec version from the - priv spec attributes by riscv_get_priv_spec_class_from_numbers. - -2020-06-20 Alan Modra - - * configure.tgt: Set bfd_gas for all SH targets. - -2020-06-18 Jan Beulich - - * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case. - * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust - expectations. - -2020-06-16 Lili Cui - - * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect - cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS. - * doc/c-i386.texi: Add avx512_vp2intersect. - -2020-06-16 Jan Beulich - - * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check - conditional. - * testsuite/gas/i386/sse-check.s: Adjust comment. - * testsuite/gas/i386/sse-check-error.l, - testsuite/gas/i386/sse-check-warn.e, - testsuite/gas/i386/x86-64-sse-check-error.l: Adjust - expectations. - -2020-06-16 Alan Modra - - * config/tc-tic30.h: Remove OBJ_AOUT support. - * configure.tgt: Delete tic30-*-*aout* entry. - -2020-06-15 Max Filippov - - * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New - macros. - (elf32xtensa_abi): New declaration. - (option_abi_windowed, option_abi_call0): New enum constants. - (md_longopts): Add entries for --abi-windowed and --abi-call0. - (md_parse_option): Add handlers for --abi-windowed and - --abi-call0. - (xtensa_add_config_info): Use xtensa_abi_choice instead of - XSHAL_ABI to format ABI tag. - * doc/as.texi (Target Xtensa options): Add --abi-windowed and - --abi-call0 to the list of options. - * doc/c-xtensa.texi: Add description for options --abi-windowed - and --abi-call0. - * testsuite/gas/xtensa/abi-call0.d: New test definition. - * testsuite/gas/xtensa/abi-windowed.d: New test definition. - * testsuite/gas/xtensa/abi.s: New test source. - -2020-06-14 H.J. Lu - - PR gas/26115 - * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with - xsusldtrk. - * testsuite/gas/i386/tsxldtrk.s: Likewise. - * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise. - * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise. - -2020-06-12 Nelson Chu - - * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed. - * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise. - * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise. - -2020-06-09 Seth Girvan - - * doc/c-avr.texi: Improve wording. - -2020-06-09 Jan Beulich - - * testsuite/gas/i386/x86-64-pseudos-bad.s, - testsuite/gas/i386/x86-64-pseudos-bad.l: New. - -2020-06-09 Jan Beulich - - * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX - encoding tests. - * testsuite/gas/i386/prefix.d: Adjust expectations. - -2020-06-09 Jan Beulich - - * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix - with VEX/EVEX encoding tests. - * testsuite/gas/i386/prefix.d: Adjust expectations. - -2020-06-09 Jan Beulich - - * config/tc-i386.c (process_suffix): Restrict defaulting to 'q' - suffix. - * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases. - * testsuite/gas/i386/noreg64.d: Adjust expectations. - * testsuite/gas/i386/noreg-intel64.d, - testsuite/gas/i386/noreg-intel64.l, - testsuite/gas/i386/noreg-intel64.s: New. - * testsuite/gas/i386/i386.exp: Run new tests. - -2020-06-09 Jan Beulich - - * config/tc-i386.c (vex_encoding_error): New enumerator. - (VEX_check_operands): Rename to VEX_check_encoding. Check - for vex_encoding_error. Move Imm4 handling ... - (check_VecOperands): ... here. - (match_template): Call VEX_check_encoding when there are no - operands. Split construct calling check_VecOperands and - VEX_check_encoding (when there are operands). - (check_register): Don't blindly set vex_encoding_evex. - * testsuite/gas/i386/pseudos-bad.s, - testsuite/gas/i386/pseudos-bad.l: New. - * testsuite/gas/i386/i386.exp: Run new test. - * testsuite/gas/i386/xmmhi64.s: Drop {vex2}. - -2020-06-08 Alex Coplan - - * config/tc-arm.c (insns): Add dfb. - * testsuite/gas/arm/dfb.d: New test. - * testsuite/gas/arm/dfb.s: Input for test. - -2020-06-08 Nick Clifton - - * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets. - -2020-06-08 Jan Beulich - - * config/tc-i386.c (pi): Add checks for RegMask and RegBND. - -2020-06-08 Jan Beulich - - * config/tc-i386.c (check_byte_reg): Drop dead conditional - around as_bad(). - -2020-06-08 Jan Beulich - - * config/tc-i386.c (check_register): Split RegTR handling, to - fail recognition also in 64-bit mode as well as with i586 or - i686 explicitly enabled. - * testsuite/gas/i386/x86_64.s: Add insns referencing tr. - * testsuite/gas/i386/x86_64-intel.d, - testsuite/gas/i386/x86_64.d: Adjust expectations. - -2020-06-08 Jan Beulich - - * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations. - * testsuite/gas/cfi/cfi.exp: Run this test. - -2020-06-08 Jan Beulich - - * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg - check to %st(N) parsing logic. - * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch. - -2020-06-08 Jan Beulich - - * config/tc-i386.c (bad_reg): New. - (check_VecOperations, i386_att_operand, i386_parse_name): Check - for it. - (check_register): New, broken out from ... - (parse_real_register): ... here. Call it. - (parse_register): Call it, and error upon failure. - * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l, - testsuite/gas/i386/x86-64-equ-bad.s, - testsuite/gas/i386/x86-64-equ-bad.l: New. - * testsuite/gas/i386/i386.exp: Run new tests. - -2020-06-06 Alan Modra - - * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10. - * doc/c-ppc.texi: Likewise. - -2020-06-06 Alan Modra - - * config/tc-ppc.c: Update throughout for reloc renaming. - -2020-06-05 Jose E. Marchesi - - * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning - stringop-overflow. - -2020-06-05 Nelson Chu - - * config/tc-riscv.c (explicit_csr): New static boolean. - Used to indicate CSR are explictly used. - (riscv_ip): Set explicit_csr to TRUE if any CSR is used. - (riscv_write_out_attrs): If we already have set elf priv - attributes, then generate them. Otherwise, don't generate - them when no CSR are used. - * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes. - * testsuite/gas/riscv/attribute-02.d: Likewise. - * testsuite/gas/riscv/attribute-03.d: Likewise. - * testsuite/gas/riscv/attribute-04.d: Likewise. - * testsuite/gas/riscv/attribute-05.d: Likewise. - * testsuite/gas/riscv/attribute-06.d: Likewise. - * testsuite/gas/riscv/attribute-07.d: Likewise. - * testsuite/gas/riscv/attribute-08.d: Likewise. - * testsuite/gas/riscv/attribute-09.d: Likewise. - * testsuite/gas/riscv/attribute-10.d: Likewise. - * testsuite/gas/riscv/attribute-unknown.d: Likewise. - * testsuite/gas/riscv/attribute-11.s: New testcase. - * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is - used, so we should output the ELF priv attributes. - * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is - used, so output the priv attributes according to the -mpriv-spec. - * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't - used, so ignore the -mpriv-spec setting. - -2020-06-04 H.J. Lu - - * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to - cgen_get_insn_value. - * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass - endianness to cgen_get_insn_value and cgen_put_insn_value. - -2020-06-04 Jose E. Marchesi - - * config/tc-bpf.c (md_apply_fix): Simplify and avoid using - cgen_put_insn_value. - -2020-06-04 Jose E. Marchesi - - * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to - bpf_cgen_cpu_open. - (md_assemble): Remove no longer needed hack. - -2020-06-04 Jose E. Marchesi - - * cgen.c (gas_cgen_finish_insn): Pass the endianness to - cgen_put_insn_value. - (gas_cgen_md_apply_fix): Likewise. - (gas_cgen_md_apply_fix): Likewise. - * config/tc-bpf.c (md_apply_fix): Pass data endianness to - cgen_put_insn_value. - * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to - cgen_put_insn_value. - -2020-06-04 Alan Modra - - * testsuite/config/default.exp: Remove global directive outside - proc body. - * testsuite/gas/mep/complex-relocs.exp: Likewise. - * testsuite/gas/microblaze/relax_size.exp: Likewise. - * testsuite/gas/microblaze/reloc_sym.exp: Likewise. - * testsuite/gas/mt/relocs.exp: Likewise. - * testsuite/gas/rx/rx.exp: Likewise. - -2020-06-03 Stephen Casner - - * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe. - -2020-06-02 Frédéric Pétrot - Jim Wilson - - PR 26051 - * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using - simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B - formats using simm12(rs1). Correct SB and B to use rs1 and rs2. - Move B before SB. Move J before UJ. - -2020-06-01 Alex Coplan - - * write.c (relax_segment): Fix handling of negative offset when - relaxing an rs_org frag. - * testsuite/gas/aarch64/org-neg.d: New test. - * testsuite/gas/aarch64/org-neg.l: Error output for test. - * testsuite/gas/aarch64/org-neg.s: Input for test. - * testsuite/gas/arm/org-neg.d: New test. - * testsuite/gas/arm/org-neg.l: Error output for test. - * testsuite/gas/arm/org-neg.s: Input for test. - -2020-05-28 Stephen Casner - - Fix unexpected failures in gas testsuite for pdp11-aout target. - These are caused by the PDP11's mix of little-endian octets in - shorts but shorts in big endian order for long or quad. - - * config/tc-pdp11.c (md_number_to_chars): Implement .quad - * testsuite/gas/all/gas.exp: Select alternate test scripts for - pdp11, skip octa test completely. - * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s - * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order. - * testsuite/gas/all/cond-pdp11.l: Match different octet order. - -2020-05-28 Alex Coplan - - * frags.c (frag_grow): Fix comment. - -2020-05-27 Stephen Casner - - PR gas/26001 - * config/tc-pdp11.c (parse_reg): Distinguish register names from - symbols that begin with a register name. - * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols. - * testsuite/gas/pdp11/pr26001.s: Likewise. - * testsuite/gas/pdp11/pr26001.d: Likewise. - -2020-05-27 Simon Cook - - * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next - pointer when creating struct riscv_csr_extra. - -2020-05-26 H.J. Lu - - * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF. - * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF. - * testsuite/gas/i386/inval-avx512f.l: Updated. - -2020-05-26 Stefan Schulze Frielinghaus - - * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector - load/store instruction variants with alignment hints. - * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store - instruction variants with alignment hints. - -2020-05-26 H.J. Lu - - PR gas/26044 - * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X - instead of R_XGATE_PCREL_X. - (xgate_parse_operand): Replace R_XGATE_PCREL_X with - BFD_RELOC_XGATE_PCREL_X. - -2020-05-26 H.J. Lu - - PR gas/26044 - * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal - with &fragP->fr_literal[0]. - -2020-05-26 H.J. Lu - - PR gas/26044 - * config/tc-vax.c (md_estimate_size_before_relax): Replace - fragP->fr_literal with &fragP->fr_literal[0]. - (md_convert_frag): Likewise. - -2020-05-26 H.J. Lu - - PR gas/26044 - * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal - with &fragP->fr_literal[0]. - -2020-05-26 H.J. Lu - - PR gas/26044 - * config/tc-crx.c (getreg_image): Change argument type to int. - (md_convert_frag): Replace fragP->fr_literal with - &fragP->fr_literal[0]. - -2020-05-26 H.J. Lu - - PR gas/26044 - * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping - sprintf with memmove. - -2020-05-25 H.J. Lu - - * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal - with &fragP->fr_literal[0]. - -2020-05-25 H.J. Lu - - PR gas/26041 - * config/tc-cr16.c (md_assemble): Use memmove to concatenate - 2 overlapping strings. - -2020-05-25 H.J. Lu - - * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal - with &fragP->fr_literal[0]. - -2020-05-25 H.J. Lu - - * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal - with &fragp->fr_literal[0]. - * config/tc-microblaze.c (md_apply_fix): Likewise. - * config/tc-sh.c (md_convert_frag): Likewise. - -2020-05-24 Jim Wilson - - PR 26025 - * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const - asection to segT. New locals seg and subseg. Call subseg_set before - fix_new_exp. Call subseg_set after loop to restore original values. - -2020-05-21 Alan Modra - - * atof-generic.c: Replace "if (x) free (x)" with "free (x)" - throughout. - * config/obj-elf.c: Likewise. - * config/tc-aarch64.c: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-m68k.c: Likewise. - * config/tc-nios2.c: Likewise. - * config/tc-tic30.c: Likewise. - * ecoff.c: Likewise. - * read.c: Likewise. - * stabs.c: Likewise. - * symbols.c: Likewise. - * testsuite/gas/all/test-gen.c: Likewise. - -2020-05-20 Nelson Chu - - * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated. - * config/tc-riscv.c (default_arch_with_ext, default_isa_spec): - Static variables which are used to set the ISA extensions. You can - use -march (or ELF build attributes) and -misa-spec to set them, - respectively. - (ext_version_hash): The hash table used to handle the extensions - with versions. - (init_ext_version_hash): Initialize the ext_version_hash according - to riscv_ext_version_table. - (riscv_get_default_ext_version): The callback function of - riscv_parse_subset_t. According to the choosed ISA spec, - get the default version for the specific extension. - (riscv_set_arch): Set the callback function. - (enum options, struct option md_longopts): Add new option -misa-spec. - (md_parse_option): Do not call riscv_set_arch for -march. We will - call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class - to set default_isa_spec class. - (riscv_after_parse_args): Call init_ext_version_hash to initialize the - ext_version_hash, and then call riscv_set_arch to set the architecture - with versions according to default_arch_with_ext. - * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for - x extensions. - * testsuite/gas/riscv/attribute-03.d: Likewise. - * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we - already set it's version to 2p1 by march, so no need to use the default - 2p2 version. For m-ext, we do not set the version by -march and ELF arch - attribute, so set the default 2p0 to it. For zicsr, it is not defined in - ISA spec 2p2, so set 0p0 to it. - * testsuite/gas/riscv/attribute-10.d: New testcase. The version of - zicsr is 2p0 according to ISA spec 20191213. - * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT) - (DEFAULT_RISCV_ISA_SPEC): Default configure option settings. - You can set them by configure options --with-arch and - --with-isa-spec, respectively. - (riscv_set_default_isa_spec): New function used to set the - default ISA spec. - (md_parse_option): Call riscv_set_default_isa_spec rather than - call riscv_get_isa_spec_class directly. - (riscv_after_parse_args): If the -isa-spec is not set, then we - set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by - calling riscv_set_default_isa_spec. - * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since - the --with-isa-spec may be set to different ISA spec. - * testsuite/gas/riscv/attribute-02.d: Likewise. - * testsuite/gas/riscv/attribute-03.d: Likewise. - * testsuite/gas/riscv/attribute-04.d: Likewise. - * testsuite/gas/riscv/attribute-05.d: Likewise. - * testsuite/gas/riscv/attribute-06.d: Likewise. - * testsuite/gas/riscv/attribute-07.d: Likewise. - * configure.ac: Add configure options, --with-arch and - --with-isa-spec. - * configure: Regenerated. - * config.in: Regenerated. - * config/tc-riscv.c (default_priv_spec): Static variable which is - used to check if the CSR is valid for the chosen privilege spec. You - can use -mpriv-spec to set it. - (enum reg_class): We now get the CSR address from csr_extra_hash rather - than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX. - (riscv_init_csr_hashes): Only need to initialize one hash table - csr_extra_hash. - (riscv_csr_class_check): Change the return type to void. Don't check - the ISA dependency if -mcsr-check isn't set. - (riscv_csr_version_check): New function. Check and find the CSR address - from csr_extra_hash, according to default_priv_spec. Report warning - for the invalid CSR if -mcsr-check is set. - (reg_csr_lookup_internal): Updated. - (reg_lookup_internal): Likewise. - (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed. - (enum options, struct option md_longopts): Add new GAS option -mpriv-spec. - (md_parse_option): Call riscv_set_default_priv_version to set - default_priv_spec. - (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default - privilege spec to the newest one. - (enum riscv_csr_class, struct riscv_csr_extra): Move them to - include/opcode/riscv.h. - * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want - to check the ISA dependency for CSR, so fix the spec version by adding - -mpriv-spec=1.11. - * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some - version warnings for the test case. - * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise. - * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise. - * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise. - * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case. - Check whether the CSR is valid when privilege version 1.9 is choosed. - * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case. - Check whether the CSR is valid when privilege version 1.9.1 is choosed. - * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case. - Check whether the CSR is valid when privilege version 1.10 is choosed. - * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case. - Check whether the CSR is valid when privilege version 1.11 is choosed. - * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise. - * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option - setting. You can set it by configure option --with-priv-spec. - (riscv_set_default_priv_spec): New function used to set the default - privilege spec. - (md_parse_option): Call riscv_set_default_priv_spec rather than - call riscv_get_priv_spec_class directly. - (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the - default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by - calling riscv_set_default_priv_spec. - * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since - the --with-priv-spec may be set to different privilege spec. - * testsuite/gas/riscv/priv-reg.d: Likewise. - * configure.ac: Add configure option --with-priv-spec. - * configure: Regenerated. - * config.in: Regenerated. - * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to - explicit_attr. Set it to TRUE if any ELF attribute is found. - (riscv_set_default_priv_spec): Try to set the default_priv_spec if - the priv attributes are set. - (md_assemble): Set the default_priv_spec according to the priv - attributes when we start to assemble instruction. - (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to - riscv_write_out_attrs. Update the arch and priv attributes. If we - don't set the corresponding ELF attributes, then try to output the - default ones. - (riscv_set_public_attributes): If any ELF attribute or -march-attr - options is set (explicit_attr is TRUE), then call riscv_write_out_attrs - to update the arch and priv attributes. - (s_riscv_attribute): Make sure all arch and priv attributes are set - before any instruction. - * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any - ELF attribute or -march-attr is set. If the priv attributes are not - set, then try to update them by the default setting (-mpriv-spec or - --with-priv-spec). - * testsuite/gas/riscv/attribute-02.d: Likewise. - * testsuite/gas/riscv/attribute-03.d: Likewise. - * testsuite/gas/riscv/attribute-04.d: Likewise. - * testsuite/gas/riscv/attribute-06.d: Likewise. - * testsuite/gas/riscv/attribute-07.d: Likewise. - * testsuite/gas/riscv/attribute-08.d: Likewise. - * testsuite/gas/riscv/attribute-09.d: Likewise. - * testsuite/gas/riscv/attribute-10.d: Likewise. - * testsuite/gas/riscv/attribute-unknown.d: Likewise. - * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec - set by priv attributes must be supported. - * testsuite/gas/riscv/attribute-05.s: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated - priv attributes according to the -mpriv-spec option. - * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise. - * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise. - * testsuite/gas/riscv/priv-reg.d: Removed. - * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the - CSR according to the priv spec 1.9. - * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the - CSR according to the priv spec 1.9.1. - * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the - CSR according to the priv spec 1.10. - * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the - CSR according to the priv spec 1.11. - * config/tc-riscv.c (md_show_usage): Add descriptions about - the new GAS options. - * doc/c-riscv.texi: Likewise. - -2020-05-19 Peter Bergner - - * testsuite/gas/ppc/power9.s : Add tests. - * testsuite/gas/ppc/power9.d: Likewise. - * testsuite/gas/ppc/power10.s : Add tests. - * testsuite/gas/ppc/power10.d: Likewise. - -2020-05-19 Alexander Fedotov - - PR 25992 - * config/tc-arm.c : Add arm_ext_v8r feature. - (it_fsm_post_encode): Check arm_ext_v8r feature. - (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature. - -2020-05-19 Alan Modra - - * write.c (write_contents): Use bfd_get_filename rather than - accessing bfd->filename directly. Use bfd_section_name rather - than accessing section->name directly. - -2020-05-19 Alan Modra - - * symbols.c (local_symbol_make): Init all of lsy_flags. - -2020-05-18 Alan Modra - - * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK - before looking at add_symbol->sy_flags. - -2020-05-18 Hongtao Liu - - * config/tc-i386.c: Not handle lret/iret. - * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase. - * testsuite/gas/i386/lfence-ret-b.d: Ditto. - * testsuite/gas/i386/lfence-ret-c.d: Ditto. - * testsuite/gas/i386/lfence-ret-d.d: Ditto. - * testsuite/gas/i386/lfence-ret.s: Ditto. - * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto. - * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto. - * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto. - * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto. - * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto. - * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto. - * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted. - -2020-05-15 Alan Modra - Alex Coplan - - * symbols.c (struct local_symbol): Update comment. - (resolve_symbol_value): For resolved symbols equated to other - symbols, verify that the referenced symbol is not a local_symbol - before accessing sy_value. Don't leave symbol loops during - finalize_syms resolution. - * testsuite/gas/all/assign-bad-recursive.d: New test. - * testsuite/gas/all/assign-bad-recursive.l: Error output for test. - * testsuite/gas/all/assign-bad-recursive.s: Assembly for test. - * testsuite/gas/all/gas.exp: Run it. - -2020-05-14 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/scalarquad.d, - * testsuite/gas/ppc/scalarquad.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/rightmost.d, - * testsuite/gas/ppc/rightmost.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/xvtlsbb.d, - * testsuite/gas/ppc/xvtlsbb.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/stringop.d, - * testsuite/gas/ppc/stringop.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Peter Bergner - - * testsuite/gas/ppc/set_bool.d, - * testsuite/gas/ppc/set_bool.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/bitmanip.d, - * testsuite/gas/ppc/bitmanip.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/genpcv.d, - * testsuite/gas/ppc/genpcv.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/maskmanip.d, - * testsuite/gas/ppc/maskmanip.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - Peter Bergner - - * config/tc-ppc.c (pre_defined_registers): Add accumulators. - (md_assemble): Check acc specified in correct operand. - * testsuite/gas/ppc/outerprod.d, - * testsuite/gas/ppc/outerprod.s, - * testsuite/gas/ppc/vsx4.d, - * testsuite/gas/ppc/vsx4.s: New tests. - * testsuite/gas/ppc/ppc.exp: Run them. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/simd_perm.d, - * testsuite/gas/ppc/simd_perm.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/int128.d, - * testsuite/gas/ppc/int128.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/vsx_32byte.d, - * testsuite/gas/ppc/vsx_32byte.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * testsuite/gas/ppc/vec_mul.s, - * testsuite/gas/ppc/vec_mul.d: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Peter Bergner - - * testsuite/gas/ppc/byte_rev.d, - * testsuite/gas/ppc/byte_rev.s: New test. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Peter Bergner - - * testsuite/gas/ppc/power10.d: Add paste. tests. - * testsuite/gas/ppc/power10.s: Likewise. - -2020-05-11 Peter Bergner - - * testsuite/gas/ppc/power10.s: New test. - * testsuite/gas/ppc/power10.d: Likewise. - * testsuite/gas/ppc/ppc.exp: Run it. - -2020-05-11 Alan Modra - - * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10 - renaming. - * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in - place of -mfuture/-Mfuture. - * testsuite/gas/ppc/prefix-pcrel.d: Likewise. - * testsuite/gas/ppc/prefix-reloc.d: Likewise. - -2020-05-06 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2020-05-06 Nick Clifton - - PR 25927 - * doc/as.texi (Preprocessing): Replace cross reference to not - existant document with a URL to the equivalent page in the GCC - manual. - -2020-05-05 Nick Clifton - - * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the - construction of a DWARF-5 directory name table. - * testsuite/gas/elf/pr25917.d: Update expected output. - -2020-05-05 Gunther Nikl - - * config/tc-rx.c (elf_flags): Initialize for non-linux targets. - (md_parse_option): Remove initialization of elf_flags. - -2020-05-04 Andre Vieira - - PR gas/25863 - * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul. - * testsuite/gas/arm/mve-scalar-vmult-it.d: New test. - * testsuite/gas/arm/mve-scalar-vmult-it.s: New test. - -2020-05-04 Nick Clifton - - PR 25917 - * dwarf2dbg.c (out_dir_and_file_list): Check for the directory - table's existence before looking at its entries. - Also do not emit a default directory entry if there are no - directories in use. - - * testsuite/gas/elf/pr25917.s: New test source file. - * testsuite/gas/elf/pr25917.d: New test driver. - * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test. - -2020-04-30 Alex Coplan - - * config/tc-aarch64.c (fix_insn): Implement for - AARCH64_OPND_UNDEFINED. - (parse_operands): Implement for AARCH64_OPND_UNDEFINED. - * testsuite/gas/aarch64/udf.s: New. - * testsuite/gas/aarch64/udf.d: New. - * testsuite/gas/aarch64/udf-invalid.s: New. - * testsuite/gas/aarch64/udf-invalid.l: New. - * testsuite/gas/aarch64/udf-invalid.d: New. - -2020-04-30 Yoshinori Sato - - * config/tc-rx.c (elf_flags): Reset default value. - (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI. - -2020-04-29 Max Filippov - - * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0 - if it's not defined. - (microarch_earliest): New static variable. - (xg_translate_idioms): Translate "simcall" to "simcall 0" when - simcall opcode has mandatory parameter. - (xg_init_global_config): Initialize microarch_earliest. - -2020-04-29 Nick Clifton - - PR 22699 - * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to - IMM0_8S and add support for IMM0_8U. - * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an - unsigned 8-bit immediate. - * testsuite/gas/sh/sh4a.d: Extended expected disassembly. - * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly. - -2020-04-27 Tamar Christina - - * NEWS: Add news entry for big-obj. - * config/tc-i386.c (i386_target_format): Support new format. - * doc/c-i386.texi: Add i386 support. - * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific. - * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well. - -2020-04-27 Nick Clifton - - PR 25878 - * dwarf2dbg.c (struct file_entry): Add auto_assigned field. - (assign_file_to_slot): New function. Fills in an entry in the - files table. - (allocate_filenum): Use new function. - (allocate_filename_to_slot): Use new function. If the specified - slot entry is already in use, but was chosen automatically then - reassign the automatic entry. - -2020-04-26 Hongtao Liu - - PR ld/25861 - * config/tc-xtensa.c (md_apply_fix): Replace - BFD_RELOC_XTENSA_DIFF{8,16,32} generation with - BFD_RELOC_XTENSA_PDIFF{8,16,32} and - BFD_RELOC_XTENSA_NDIFF{8,16,32} generation. - * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16 - with BFD_RELOC_XTENSA_PDIFF16 in the expected output. - -2020-04-22 Alan Modra - - * config/obj-elf.c (elf_frob_symbol): Unconditionally remove - symbol for ".symver .. remove". - * doc/as.texi (.symver): Update. - * testsuite/gas/symver/symver11.s: Make foo weak. - * testsuite/gas/symver/symver11.d: Expect an error. - * testsuite/gas/symver/symver7.d: Allow other random symbols. - -2020-04-21 H.J. Lu - - * testsuite/gas/symver/symver11.s: Add ".balign 8". - -2020-04-21 Andreas Schwab - - PR 25848 - * testsuite/gas/m68k/operands.s: Add tests for cmpi. - * testsuite/gas/m68k/operands.d: Update. - * testsuite/gas/m68k/op68000.d: Update for new error messages. - -2020-04-21 Tamar Christina - - PR binutils/24753 - * testsuite/gas/arm/pr24753.d: New test. - * testsuite/gas/arm/pr24753.s: New test. - -2020-04-21 H.J. Lu - - PR gas/23840 - PR gas/25295 - * NEWS: Mention .symver extension. - * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New - function. - (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to - add a version name. Add local, hidden and remove visibility - support. - (elf_frob_symbol): Handle the list of version names. Update the - original symbol to local, hidden or remove it from the symbol - table. - (elf_frob_file_before_adjust): Handle the list of version names. - * config/obj-elf.h (elf_visibility): New. - (elf_versioned_name_list): Likewise. - (elf_obj_sy): Change local to bitfield. Add rename, bad_version - and visibility. Change versioned_name pointer to struct - elf_versioned_name_list. - * doc/as.texi: Update .symver directive. - * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more - error checking tests. - * testsuite/gas/symver/symver6.d: New file. - * testsuite/gas/symver/symver7.d: Likewise. - * testsuite/gas/symver/symver7.s: Likewise. - * testsuite/gas/symver/symver8.d: Likewise. - * testsuite/gas/symver/symver8.s: Likewise. - * testsuite/gas/symver/symver9.s: Likewise. - * testsuite/gas/symver/symver9a.d: Likewise. - * testsuite/gas/symver/symver9b.d: Likewise. - * testsuite/gas/symver/symver10.s: Likewise. - * testsuite/gas/symver/symver10a.d: Likewise. - * testsuite/gas/symver/symver10b.d: Likewise. - * testsuite/gas/symver/symver11.d: Likewise. - * testsuite/gas/symver/symver11.s: Likewise. - * testsuite/gas/symver/symver12.d: Likewise. - * testsuite/gas/symver/symver12.s: Likewise. - * testsuite/gas/symver/symver13.d: Likewise. - * testsuite/gas/symver/symver13.s: Likewise. - * testsuite/gas/symver/symver14.d: Likewise. - * testsuite/gas/symver/symver14.l: Likewise. - * testsuite/gas/symver/symver15.d: Likewise. - * testsuite/gas/symver/symver15.l: Likewise. - * testsuite/gas/symver/symver6.l: Removed. - * testsuite/gas/symver/symver6.s: Updated. - -2020-04-20 Sudakshina Das - - * config/tc-aarch64.c (parse_barrier_psb): Update error messages - to include TSB. - * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests. - * testsuite/gas/aarch64/system-2.s: Add new tsb tests. - * testsuite/gas/aarch64/system.d: Update. - -2020-04-20 Sudakshina Das - - * testsuite/gas/aarch64/bti.d: Update -march option. - * testsuite/gas/aarch64/illegal-bti.d: Remove. - * testsuite/gas/aarch64/illegal-bti.l: Remove. - * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb. - * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb. - -2020-04-17 Alan Modra - - * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot. - -2020-04-16 Gagan Singh Sidhu - Nick Clifton - - PR 25803 - * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS - targets. - * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip - for the type-2 test. - * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS - targets running this test. - -2020-02-16 David Faust - - * testsuite/gas/bpf/bpf.exp: Run jump32 tests. - * testsuite/gas/bpf/jump32.s: New file. - * testsuite/gas/bpf/jump32.d: Likewise. - -2020-04-08 H.J. Lu - - * doc/c-i386.texi: Correct -mlfence-before-indirect-branch= - documentation. - -2020-04-08 Gunther Nikl - - * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define. - (md_pcrel_from): Remove prototytpe. - * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate - define. - (md_pcrel_from_section): Remove duplicate prototype. - * tc.h (md_pcrel_from_section): Add prototype. - * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype. - * config/tc-arc.h (md_pcrel_from_section): Likewise. - * config/tc-arm.h (md_pcrel_from_section): Likewise. - * config/tc-avr.h (md_pcrel_from_section): Likewise. - * config/tc-bfin.h (md_pcrel_from_section): Likewise. - * config/tc-bpf.h (md_pcrel_from_section): Likewise. - * config/tc-csky.h (md_pcrel_from_section): Likewise. - * config/tc-d10v.h (md_pcrel_from_section): Likewise. - * config/tc-d30v.h (md_pcrel_from_section): Likewise. - * config/tc-epiphany.h (md_pcrel_from_section): Likewise. - * config/tc-fr30.h (md_pcrel_from_section): Likewise. - * config/tc-frv.h (md_pcrel_from_section): Likewise. - * config/tc-iq2000.h (md_pcrel_from_section): Likewise. - * config/tc-lm32.h (md_pcrel_from_section): Likewise. - * config/tc-m32c.h (md_pcrel_from_section): Likewise. - * config/tc-m32r.h (md_pcrel_from_section): Likewise. - * config/tc-mcore.h (md_pcrel_from_section): Likewise. - * config/tc-mep.h (md_pcrel_from_section): Likewise. - * config/tc-metag.h (md_pcrel_from_section): Likewise. - * config/tc-microblaze.h (md_pcrel_from_section): Likewise. - * config/tc-mmix.h (md_pcrel_from_section): Likewise. - * config/tc-moxie.h (md_pcrel_from_section): Likewise. - * config/tc-msp430.h (md_pcrel_from_section): Likewise. - * config/tc-mt.h (md_pcrel_from_section): Likewise. - * config/tc-or1k.h (md_pcrel_from_section): Likewise. - * config/tc-ppc.h (md_pcrel_from_section): Likewise. - * config/tc-rl78.h (md_pcrel_from_section): Likewise. - * config/tc-rx.h (md_pcrel_from_section): Likewise. - * config/tc-s390.h (md_pcrel_from_section): Likewise. - * config/tc-sh.h (md_pcrel_from_section): Likewise. - * config/tc-xc16x.h (md_pcrel_from_section): Likewise. - * config/tc-xstormy16.h (md_pcrel_from_section): Likewise. - * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol, - md_show_usage, md_convert_frag, md_operand, md_number_to_chars, - md_estimate_size_before_relax, md_section_align, tc_gen_reloc, - md_apply_fix3): Delete prototypes. - -2020-04-07 H.J. Lu - - * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK - instructions. - -2020-04-07 H.J. Lu - - * doc/c-z80.texi: Fix @xref warnings. - -2020-04-07 Lili Cui - - * config/tc-i386.c (cpu_arch): Add .TSXLDTRK. - (cpu_noarch): Likewise. - * doc/c-i386.texi: Document TSXLDTRK. - * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests. - * testsuite/gas/i386/tsxldtrk.d: Likewise. - * testsuite/gas/i386/tsxldtrk.s: Likewise. - * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise. - -2020-04-02 Lili Cui - - * config/tc-i386.c (cpu_arch): Add .serialize. - (cpu_noarch): Likewise. - * doc/c-i386.texi: Document serialize. - * testsuite/gas/i386/i386.exp: Run serialize tests - * testsuite/gas/i386/serialize.d: Likewise. - * testsuite/gas/i386/x86-64-serialize.d: Likewise. - * testsuite/gas/i386/serialize.s: Likewise. - -2020-04-02 Rainer Orth - - * testsuite/gas/elf/section12a.d: Use notarget instead of xfail. - * testsuite/gas/elf/section12b.d: Likewise. - * testsuite/gas/elf/section16a.d: Likewise. - * testsuite/gas/elf/section16b.d: Likewise. - -2020-04-02 Gunther Nikl - - * config/tc-m68k.c (m68k_ip): Fix range check for index register - with a suppressed address register. - -2020-04-01 H.J. Lu - - PR gas/25756 - * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New. - * testsuite/gas/i386/localpic.s: Add a test for relocation - against local absolute symbol. - * testsuite/gas/i386/x86-64-localpic.s: Likewise. - * testsuite/gas/i386/localpic.d: Updated. - * testsuite/gas/i386/x86-64-localpic.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise. - -2020-04-01 Rainer Orth - - PR gas/25732 - * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file. - * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file. - * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to - testsuite/gas/i386/x86-64-jump.d. - * testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d: - Incorporate changes to - gas/testsuite/gas/i386/x86-64-mpx-branch-1.d. - * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate - changes to testsuite/gas/i386/x86-64-mpx-branch-2.d. - * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*. - * testsuite/gas/i386/x86-64-branch-3.d: Likewise. - -2020-03-31 Maciej W. Rozycki - - PR 25611 - PR 25614 - * dwarf2dbg.c: Do not include "bignum.h". - -2020-03-30 Nelson Chu - - * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo. - * testsuite/gas/riscv/alias-csr.s: Likewise. - * testsuite/gas/riscv/no-aliases-csr.d: Move this - to priv-reg-pseudo-noalias. - * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent. - * testsuite/gas/riscv/bad-csr.l: Likewise. - * testsuite/gas/riscv/bad-csr.s: Likewise. - * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg. - * testsuite/gas/riscv/satp.s: Likewise. - * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo - csr instruction, including alias-csr testcase. - * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise. - * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all - pseudo instruction with objdump -Mno-aliases. - * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase. - * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise. - * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11. - * testsuite/gas/riscv/priv-reg.s: Likewise. - * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise. - * testsuite/gas/riscv/csr-dw-regnums.d: Likewise. - * testsuite/gas/riscv/csr-dw-regnums.s: Likewise. - -2020-03-25 J.W. Jagersma - - * config/obj-coff.c (obj_coff_section): Set the bss flag on - sections with the "b" attribute. - -2020-03-22 Alan Modra - - * testsuite/gas/s12z/truncated.d: Update expected output. - -2020-03-17 Sergey Belyashov - - PR 25690 - * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops. - * doc/c-z80.texi: Update documentation. - -2020-03-17 Sergey Belyashov - - PR 25641 - PR 25668 - PR 25633 - Fix disassembling ED+A4/AC/B4/BC opcodes. - Fix assembling lines containing colonless label and instruction - with first operand inside parentheses. - Fix registration of unsupported by target CPU registers. - * config/tc-z80.c: See above. - * config/tc-z80.h: See above. - * testsuite/gas/z80/colonless.d: Update test. - * testsuite/gas/z80/colonless.s: Likewise. - * testsuite/gas/z80/ez80_adl_all.d: Likewise. - * testsuite/gas/z80/ez80_unsup_regs.d: Likewise. - * testsuite/gas/z80/ez80_z80_all.d: Likewise. - * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise. - * testsuite/gas/z80/r800_unsup_regs.d: Likewise. - * testsuite/gas/z80/unsup_regs.s: Likewise. - * testsuite/gas/z80/z180_unsup_regs.d: Likewise. - * testsuite/gas/z80/z80.exp: Likewise. - * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise. - * testsuite/gas/z80/z80_unsup_regs.d: Likewise. - * testsuite/gas/z80/z80n_unsup_regs.d: Likewise. - -2020-03-13 Andre Vieira - - PR 25660 - * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ. - (parse_operands): Handle new operand codes. - (do_neon_dyadic_long): Make shape check accept the scalar variants. - (asm_opcode_insns): Fix operand codes for vaddl and vsubl. - * testsuite/gas/arm/mve-vaddsub-it.s: New test. - * testsuite/gas/arm/mve-vaddsub-it.d: New test. - * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test. - * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test. - * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test. - * testsuite/gas/arm/nomve-vaddsub-it.d: New test. - -2020-03-11 H.J. Lu - - * NEWS: Mention x86 assembler options for CVE-2020-0551. - -2020-03-11 H.J. Lu - - * testsuite/gas/i386/i386.exp: Run new tests. - * testsuite/gas/i386/lfence-byte.d: New file. - * testsuite/gas/i386/lfence-byte.e: Likewise. - * testsuite/gas/i386/lfence-byte.s: Likewise. - * testsuite/gas/i386/lfence-indbr-a.d: Likewise. - * testsuite/gas/i386/lfence-indbr-b.d: Likewise. - * testsuite/gas/i386/lfence-indbr-c.d: Likewise. - * testsuite/gas/i386/lfence-indbr.e: Likewise. - * testsuite/gas/i386/lfence-indbr.s: Likewise. - * testsuite/gas/i386/lfence-load.d: Likewise. - * testsuite/gas/i386/lfence-load.s: Likewise. - * testsuite/gas/i386/lfence-ret-a.d: Likewise. - * testsuite/gas/i386/lfence-ret-b.d: Likewise. - * testsuite/gas/i386/lfence-ret.s: Likewise. - * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise. - * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise. - * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise. - * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise. - * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise. - * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise. - * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise. - * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise. - * testsuite/gas/i386/x86-64-lfence-load.d: Likewise. - * testsuite/gas/i386/x86-64-lfence-load.s: Likewise. - * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise. - * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise. - -2020-03-11 H.J. Lu - - * config/tc-i386.c (lfence_after_load): New. - (lfence_before_indirect_branch_kind): New. - (lfence_before_indirect_branch): New. - (lfence_before_ret_kind): New. - (lfence_before_ret): New. - (last_insn): New. - (load_insn_p): New. - (insert_lfence_after): New. - (insert_lfence_before): New. - (md_assemble): Call insert_lfence_before and insert_lfence_after. - Set last_insn. - (OPTION_MLFENCE_AFTER_LOAD): New. - (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New. - (OPTION_MLFENCE_BEFORE_RET): New. - (md_longopts): Add -mlfence-after-load=, - -mlfence-before-indirect-branch= and -mlfence-before-ret=. - (md_parse_option): Handle -mlfence-after-load=, - -mlfence-before-indirect-branch= and -mlfence-before-ret=. - (md_show_usage): Display -mlfence-after-load=, - -mlfence-before-indirect-branch= and -mlfence-before-ret=. - (i386_cons_align): New. - * config/tc-i386.h (i386_cons_align): New. - (md_cons_align): New. - * doc/c-i386.texi: Document -mlfence-after-load=, - -mlfence-before-indirect-branch= and -mlfence-before-ret=. - -2020-03-11 Nick Clifton - - PR 25611 - PR 25614 - * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1. - (DWARF2_FILE_SIZE_NAME): Default to -1. - (DWARF2_LINE_VERSION): Default to the current dwarf level or 3, - whichever is higher. - (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1. - (NUM_MD5_BYTES): Define. - (struct file entry): Add md5 field. - (get_filenum): Delete and replace with... - (get_basename): New function. - (get_directory_table_entry): New function. - (allocate_filenum): New function. - (allocate_filename_to_slot): New function. - (dwarf2_where): Use new functions. - (dwarf2_directive_filename): Add support for extended .file - pseudo-op. - (dwarf2_directive_loc): Allow the use of file number zero with - DWARF 5 or higher. - (out_file_list): Rename to... - (out_dir_and_file_list): Add DWARF 5 support. - (out_debug_line): Emit extra values into the section header for - DWARF 5. - (out_debug_str): Allow for file 0 to be used with DWARF 5. - * doc/as.texi (.file): Update the description of this pseudo-op. - * testsuite/gas/elf-dwarf-5-file0.s: Add more lines. - * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output. - * testsuite/gas/lns/lns-diag-1.l: Update expected error message. - * NEWS: Mention the new feature. - -2020-03-10 Alan Modra - - * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions - to avoid signed overflow. - * config/tc-mcore.c (md_assemble): Likewise. - * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise. - * config/tc-nds32.c (SET_ADDEND): Likewise. - * config/tc-nios2.c (nios2_assemble_arg_R): Likewise. - -2020-03-09 Jan Beulich - - * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos. - * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d, - testsuite/gas/i386/avx-intel.d: Adjust expectations. - -2020-03-07 Alan Modra - - * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in - first column. - -2020-03-06 Nick Clifton - - PR 25614 - * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of - 0 if the dwarf_level is 5 or more. Complain if a filename follows - a file 0. - * testsuite/gas/elf/dwarf-5-file0.s: New test. - * testsuite/gas/elf/dwarf-5-file0.d: New test driver. - * testsuite/gas/elf/elf.exp: Run the new test. - - PR 25612 - * config/tc-ia64.h (DWARF2_VERISION): Fix typo. - * doc/as.texi: Fix another typo. - -2020-03-06 Nick Clifton - - PR 25612 - * as.c (dwarf_level): Define. - (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5. - (parse_args): Add support for the new options. - as.h (dwarf_level): Prototype. - * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version - value. - * config/tc-ia64.h (DWARF2_VERISION): Update definition. - (DWARF2_LINE_VERSION): Remove definition. - * doc/as.texi: Document the new options. - -2020-03-06 Nick Clifton - - PR 25572 - * as.c (main): Allow matching input and outputs when they are - not regular files. - -2020-03-06 Jan Beulich - - * config/tc-i386.c (match_mem_size): Generalize broadcast special - casing. - (check_VecOperands): Zap xmmword/ymmword/zmmword when more than - one of byte/word/dword/qword is set alongside a SIMD register in - a template's operand. - -2020-03-06 Jan Beulich - - * config/tc-i386.c (match_template): Extend code in logic - rejecting certain suffixes in certain modes to also cover mask - register use and VecSIB. Drop special casing of broadcast. Skip - immediates in the check. - -2020-03-06 Jan Beulich - - * config/tc-i386.c (match_template): Fold duplicate code in - logic rejecting certain suffixes in certain modes. Drop - pointless "else". - -2020-03-06 Jan Beulich - - * config/tc-i386.c (process_suffix): Exlucde !vexw insns - alongside !norex64 ones. - * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR* - with both 32- and 64-bit GPR operands. - * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both - 32- and 64-bit GPR operands. - * testsuite/gas/i386/x86-64-avx512bw-intel.d, - testsuite/gas/i386/x86-64-avx512bw.d, - testsuite/gas/i386/x86-64-avx512f-intel.d, - testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations. - -2020-03-06 Jan Beulich - - * config/tc-i386.c (md_assemble): Drop use of rex64. - (process_suffix): For REX.W for 64-bit CRC32. - -2020-03-06 Jan Beulich - - * config/tc-i386.c (i386_addressing_mode): For 32-bit - addressing for MPX insns without base/index. - * testsuite/gas/i386/mpx-16bit.s, - * testsuite/gas/i386/mpx-16bit.d: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2020-03-06 Jan Beulich - - * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s, - testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s, - testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s, - testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s, - * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases - as well as a BSWAP one. - * testsuite/gas/i386/rdpid.s: Add 16-bit case. - * testsuite/gas/i386/sse2-16bit.s: Cover more insns. - * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d, - testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d, - testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d, - testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d, - testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d, - testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d, - testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d, - testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d, - testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d, - testsuite/gas/i386/vmx.d: Adjust expectations. - -2020-03-06 Jan Beulich - - * config/tc-i386.c (md_assemble): Also exclude tpause and umwait - from having their operands swapped. - * testsuite/gas/i386/waitpkg.s, - testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait - 3-operand cases as well as testing of 16-bit code generation. - * testsuite/gas/i386/waitpkg.d, - testsuite/gas/i386/waitpkg-intel.d, - testsuite/gas/i386/x86-64-waitpkg.d, - testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations. - -2020-03-04 Nelson Chu - - * config/tc-riscv.c (percent_op_utype): Support the modifier - %got_pcrel_hi. - * doc/c-riscv.texi: Add documentation. - * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new - modifier %got_pcrel_hi. - * testsuite/gas/riscv/no-relax-reloc.s: Likewise. - * testsuite/gas/riscv/relax-reloc.d: Likewise. - * testsuite/gas/riscv/relax-reloc.s: Likewise. - - * doc/c-riscv.texi (relocation modifiers): Add documentation. - (RISC-V-Formats): Update the section name from "Instruction Formats" - to "RISC-V Instruction Formats". - -2020-03-04 Alexandre Oliva - - * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is - detected in a section which does not have at least 4 byte - alignment. - * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive. - * testsuite/gas/arm/ldr-t.s: Likewise. - * testsuite/gas/arm/sp-pc-usage-t.s: Likewise. - * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of - disassembly, ignoring any NOPs that may have been inserted because - of section alignment. - * testsuite/gas/arm/ldr-t.d: Likewise. - -2020-03-04 Jan Beulich - - * config/tc-i386.c (cpu_arch): Add .sev_es entry. - * doc/c-i386.texi: Mention sev_es. - * testsuite/gas/i386/arch-13.s: Add SEV-ES case. - * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust - expectations. - * testsuite/gas/i386/arch-13-znver1.d, - testsuite/gas/i386/arch-13-znver2.d: Extend -march=. - -2020-03-03 H.J. Lu - - * config/tc-i386.c (match_template): Replace ignoresize and - defaultsize with mnemonicsize. - (process_suffix): Likewise. - -2020-03-03 Sergey Belyashov - - PR 25627 - * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of - instruction LD IY,(HL). - * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly. - * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction. - * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly. - * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction. - -2020-03-03 H.J. Lu - - PR gas/25622 - * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and - x86-64-default-suffix-avx. - * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss, - vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries. - * testsuite/gas/i386/noreg64.d: Updated. - * testsuite/gas/i386/noreg64.l: Likewise. - * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file. - * testsuite/gas/i386/x86-64-default-suffix.d: Likewise. - * testsuite/gas/i386/x86-64-default-suffix.s: Likewise. - -2020-03-03 Sergey Belyashov - - PR 25604 - * config/tc-z80.c (contains_register): Prevent an illegal memory - access when checking an expression for a register name. - -2020-03-03 Alan Modra - - * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips - support. - -2020-03-02 Alan Modra - - * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section. - * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata - and .sbss sections. - * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout. - (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section. - (s3_s_score_lcomm): Likewise. - * config/tc-score7.c: Similarly. - * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section. - -2020-02-28 YunQiang Su - - PR gas/25539 - * config/tc-mips.c (fix_loongson3_llsc): Compare label value - to handle multi-labels. - (has_label_name): New. - -2020-02-26 Matthew Malcomson - - * config/tc-arm.c (enum pred_instruction_type): Remove - NEUTRAL_IT_NO_VPT_INSN predication type. - (cxn_handle_predication): Modify to require condition suffixes. - (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases. - * testsuite/gas/arm/cde-scalar.s: Update test. - * testsuite/gas/arm/cde-warnings.l: Update test. - * testsuite/gas/arm/cde-warnings.s: Update test. - -2020-02-26 Alan Modra - - * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use - N_() on empty string. - -2020-02-26 Alan Modra - - * read.c (read_a_source_file): Call strncpy with length one - less than size of original_case_string. - -2020-02-26 Alan Modra - - * config/obj-elf.c: Indent labels correctly. - * config/obj-macho.c: Likewise. - * config/tc-aarch64.c: Likewise. - * config/tc-alpha.c: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-cr16.c: Likewise. - * config/tc-crx.c: Likewise. - * config/tc-frv.c: Likewise. - * config/tc-i386-intel.c: Likewise. - * config/tc-i386.c: Likewise. - * config/tc-ia64.c: Likewise. - * config/tc-mn10200.c: Likewise. - * config/tc-mn10300.c: Likewise. - * config/tc-nds32.c: Likewise. - * config/tc-riscv.c: Likewise. - * config/tc-s12z.c: Likewise. - * config/tc-xtensa.c: Likewise. - * config/tc-z80.c: Likewise. - * read.c: Likewise. - * symbols.c: Likewise. - * write.c: Likewise. - -2020-02-20 Nelson Chu - - * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate - we are assembling instruction with CSR. Call riscv_csr_read_only_check - after parsing all arguments. - (enum csr_insn_type): New enum is used to classify the CSR instruction. - (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These - are used to check if we write a read-only CSR by the CSR instruction. - * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test - all CSR for the read-only CSR checking. - * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise. - * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test - all CSR instructions for the read-only CSR checking. - * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise. - * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise. - - * config/tc-riscv.c (struct riscv_set_options): New field csr_check. - (riscv_opts): Initialize it. - (reg_lookup_internal): Check the `riscv_opts.csr_check` - before doing the CSR checking. - (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK. - (md_longopts): Add mcsr-check and mno-csr-check. - (md_parse_option): Handle new enum option values. - (s_riscv_option): Handle new long options. - * doc/c-riscv.texi: Add description for the new .option and assembler - options. - * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable - the CSR checking. - * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise. - - * config/tc-riscv.c (csr_extra_hash): New. - (enum riscv_csr_class): New enum. Used to decide - whether or not this CSR is legal in the current ISA string. - (struct riscv_csr_extra): New structure to hold all extra information - of CSR. - (riscv_init_csr_hashes): New. According to the DECLARE_CSR and - DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash. - Call hash_reg_name to insert CSR address into reg_names_hash. - (reg_csr_lookup_internal, riscv_csr_class_check): New functions. - Decide whether the CSR is valid according to the csr_extra_hash. - (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs. - (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is - not a boolean. This is same as riscv_init_csr_hash, so keep the - consistent usage. - (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR. - * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option. - * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option. - * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source - file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the - f-ext CSR are not allowed. - * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. - * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The - source file is `priv-reg.s`, and the ISA is rv64if, so the - rv32-only CSR are not allowed. - * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise. - -2020-02-21 Alan Modra - - * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32. - (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs. - -2020-02-21 Alan Modra - - PR 25569 - * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop - on section size adjustment, instead perform another write if - exec header size is larger than section size. - -2020-02-19 Nelson Chu - - * doc/c-riscv.texi: Add the doc entries for -march-attr/ - -mno-arch-attr command line options. - -2020-02-19 Nelson Chu - - * testsuite/gas/riscv/c-add-addi.d: New testcase. - * testsuite/gas/riscv/c-add-addi.s: Likewise. - -2020-02-19 Sergey Belyashov - - PR 25576 - * config/tc-z80.c (md_parse_option): Do not use an underscore - prefix for local labels in SDCC compatability mode. - (z80_start_line_hook): Remove SDCC dollar label support. - * testsuite/gas/z80/sdcc.d: Update expected disassembly. - * testsuite/gas/z80/sdcc.s: Likewise. - -2020-02-19 Sergey Belyashov - - PR 25517 - * config/tc-z80.c: Add -march option. - * doc/as.texi: Update Z80 documentation. - * doc/c-z80.texi: Likewise. - * testsuite/gas/z80/ez80_adl_all.d: Update command line. - * testsuite/gas/z80/ez80_adl_suf.d: Likewise. - * testsuite/gas/z80/ez80_pref_dis.d: Likewise. - * testsuite/gas/z80/ez80_z80_all.d: Likewise. - * testsuite/gas/z80/ez80_z80_suf.d: Likewise. - * testsuite/gas/z80/gbz80_all.d: Likewise. - * testsuite/gas/z80/r800_extra.d: Likewise. - * testsuite/gas/z80/r800_ii8.d: Likewise. - * testsuite/gas/z80/r800_z80_doc.d: Likewise. - * testsuite/gas/z80/sdcc.d: Likewise. - * testsuite/gas/z80/z180.d: Likewise. - * testsuite/gas/z80/z180_z80_doc.d: Likewise. - * testsuite/gas/z80/z80_doc.d: Likewise. - * testsuite/gas/z80/z80_ii8.d: Likewise. - * testsuite/gas/z80/z80_in_f_c.d: Likewise. - * testsuite/gas/z80/z80_op_ii_ld.d: Likewise. - * testsuite/gas/z80/z80_out_c_0.d: Likewise. - * testsuite/gas/z80/z80_sli.d: Likewise. - * testsuite/gas/z80/z80n_all.d: Likewise. - * testsuite/gas/z80/z80n_reloc.d: Likewise. - -2020-02-19 H.J. Lu - - * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd - with GNU_PROPERTY_X86_FEATURE_2_MMX. - * testsuite/gas/i386/i386.exp: Run property-3 and - x86-64-property-3. - * testsuite/gas/i386/property-3.d: New file. - * testsuite/gas/i386/property-3.s: Likewise. - * testsuite/gas/i386/x86-64-property-3.d: Likewise. - -2020-02-17 H.J. Lu - - * config/tc-i386.c (cpu_arch): Add .popcnt. - * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt. - Add a tab before @samp{.sse4a}. - -2020-02-17 Jan Beulich - - * config/tc-i386.c (process_suffix): Don't try to guess a suffix - for AddrPrefixOpReg templates. Combine the two pieces of - addrprefixopreg handling. Reject 16-bit address reg in 64-bit - mode. - -2020-02-17 Jan Beulich - - PR gas/14439 - * config/tc-i386.c (md_assemble): Also suppress operand - swapping for MONITOR{,X} and MWAIT{,X}. - * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s: - Add Intel syntax monitor/mwait tests. - * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d: - Adjust expectations. - *testsuite/gas/i386/sse3-intel.d, - testsuite/gas/i386/x86-64-sse3-intel.d: New. - * testsuite/gas/i386/i386.exp: Run new tests. - -2020-02-17 Jan Beulich - - PR gas/6518 - * config/tc-i386.c (process_suffix): Re-work Intel-syntax - [XYZ]MMWord memory operand ambiguity recognition logic (largely - re-indentation). - * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps - cases. - * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16. - * testsuite/gas/i386/avx512dq-inval.l, - testsuite/gas/i386/inval-avx.l, - testsuite/gas/i386/inval-avx512f.l: Adjust expectations. - * testsuite/gas/i386/avx512vl-ambig.s, - testsuite/gas/i386/avx512vl-ambig.l: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2020-02-16 H.J. Lu - - * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore - nosse4. - * doc/c-i386.texi: Document sse4a and nosse4a. - -2020-02-14 H.J. Lu - - * doc/c-i386.texi: Remove the old movsx and movzx documentation - for AT&T syntax. - -2020-02-14 Jan Beulich - - PR gas/25438 - * config/tc-i386.c (md_assemble): Move movsx/movzx special - casing ... - (process_suffix): ... here. Consider just the first operand - initially. - (check_long_reg): Drop opcode 0x63 special case again. - * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s, - testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s: - Move ambiguous operand size tests ... - * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s, - testsuite/gas/i386/noreg64.s: ... here. - * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d - testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d, - testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d, - testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l, - testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d, - testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d, - testsuite/gas/i386/x86-64-movsxd.d, - testsuite/gas/i386/x86-64-movsxd-intel.d, - testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d: - Adjust expectations. - * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l, - testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l, - testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New. - * testsuite/gas/i386/i386.exp: Run new tests. - -2020-02-14 Jan Beulich - - * config/tc-i386.c (process_operands): Also skip segment - override prefix emission if it matches an already present one. - * testsuite/gas/i386/prefix32.s: Add double segment override - cases. - * testsuite/gas/i386/prefix32.l: Adjust expectations. - -2020-02-14 Jan Beulich - - * config/tc-i386.c (process_operands): Drop ineffectual segment - overrides when optimizing. - * testsuite/gas/i386/lea-optimize.d: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2020-02-14 Jan Beulich - - * config/tc-i386.c (process_operands): Also check insn prefix - for ineffectual segment override warning. Don't cover possible - VEX/EVEX encoded insns there. - * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d, - testsuite/gas/i386/lea.e: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2020-02-14 H.J. Lu - - PR gas/25438 - * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T - syntax. - -2020-02-13 Fangrui Song - H.J. Lu - - PR gas/25551 - * config/tc-i386.c (tc_i386_fix_adjustable): Don't check - BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32. - * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4. - * testsuite/gas/i386/relax-5.d: New file. - * testsuite/gas/i386/relax-5.s: Likewise. - * testsuite/gas/i386/x86-64-relax-4.d: Likewise. - * testsuite/gas/i386/x86-64-relax-4.s: Likewise. - -2020-02-13 Jan Beulich - - * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in - "nosse4" entry. - -2020-02-12 Jan Beulich - - * config/tc-i386.c (avx512): New (at file scope), moved from - (check_VecOperands): ... here. - (process_suffix): Add [XYZ]MMword operand size handling. - * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests. - * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS - tests. - * testsuite/gas/i386/avx512dq-inval.l, - testsuite/gas/i386/noavx512-2.l: Adjust expectations. - -2020-02-12 Jan Beulich - - PR gas/24546 - * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit - code only. - * config/tc-i386-intel.c (i386_intel_operand): Also handle - CALL/JMP in O_tbyte_ptr case. - * doc/c-i386.texi: Mention far call and full pointer load ISA - differences. - * testsuite/gas/i386/x86-64-branch-3.s, - testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases. - * testsuite/gas/i386/x86-64-branch-3.d, - testsuite/gas/i386/x86-64-intel64.d: Adjust expectations. - * testsuite/gas/i386/x86-64-branch-5.l, - testsuite/gas/i386/x86-64-branch-5.s: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2020-02-12 Jan Beulich - - PR gas/25438 - * config/tc-i386.c (REGISTER_WARNINGS): Delete. - (check_byte_reg): Skip only source operand of CRC32. Drop Non- - 64-bit-only warning. - (check_word_reg): Consistently error on mismatching register - size and suffix. - * testsuite/gas/i386/general.s: Replace dword GPR with word one - for movw. Replace suffix / GPR for orb. - * testsuite/gas/i386/inval.s: Add tests for movw with dword and - byte GPRs as well as ones for inb/outb with a word accumulator. - * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l, - testsuite/gas/i386/inval.l: Adjust expectations. - -2020-02-12 Jan Beulich - - * config/tc-i386.c (operand_type_register_match): Also fall - through initial two if()-s when the template allows for a GPR - operand. Adjust comment. - -2020-02-11 Jan Beulich - - (struct _i386_insn): New field "short_form". - (optimize_encoding): Drop setting of shortform field. - (process_suffix): Set i.short_form. Replace shortform use. - (process_operands): Replace shortform use. - -2020-02-11 Matthew Malcomson - - * config/tc-arm.c (vcx_handle_register_arguments): Remove `for` - loop initial declaration. - -2020-02-10 Matthew Malcomson - - * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for - instructions that can have 5 arguments. - (enum operand_parse_code): Add new operands. - (parse_operands): Account for new operands. - (S5): New macro. - (enum neon_shape_el): Introduce P suffixes for coprocessor. - (neon_select_shape): Account for P suffix. - (LOW1): Move macro to global position. - (HI4): Move macro to global position. - (vcx_assign_vec_d): New. - (vcx_assign_vec_m): New. - (vcx_assign_vec_n): New. - (enum vcx_reg_type): New. - (vcx_get_reg_type): New. - (vcx_size_pos): New. - (vcx_vec_pos): New. - (vcx_handle_shape): New. - (vcx_ensure_register_in_range): New. - (vcx_handle_register_arguments): New. - (vcx_handle_insn_block): New. - (vcx_handle_common_checks): New. - (do_vcx1): New. - (do_vcx2): New. - (do_vcx3): New. - * testsuite/gas/arm/cde-missing-fp.d: New test. - * testsuite/gas/arm/cde-missing-fp.l: New test. - * testsuite/gas/arm/cde-missing-mve.d: New test. - * testsuite/gas/arm/cde-missing-mve.l: New test. - * testsuite/gas/arm/cde-mve-or-neon.d: New test. - * testsuite/gas/arm/cde-mve-or-neon.s: New test. - * testsuite/gas/arm/cde-mve.s: New test. - * testsuite/gas/arm/cde-warnings.l: - * testsuite/gas/arm/cde-warnings.s: - * testsuite/gas/arm/cde.d: - * testsuite/gas/arm/cde.s: - -2020-02-10 Stam Markianos-Wright - Matthew Malcomson - - * config/tc-arm.c (arm_ext_cde*): New feature sets for each - CDE coprocessor that can be enabled. - (enum pred_instruction_type): New pred type. - (BAD_NO_VPT): New error message. - (BAD_CDE): New error message. - (BAD_CDE_COPROC): New error message. - (enum operand_parse_code): Add new immediate operands. - (parse_operands): Account for new immediate operands. - (check_cde_operand): New. - (cde_coproc_enabled): New. - (cde_coproc_pos): New. - (cde_handle_coproc): New. - (cxn_handle_predication): New. - (do_custom_instruction_1): New. - (do_custom_instruction_2): New. - (do_custom_instruction_3): New. - (do_cx1): New. - (do_cx1a): New. - (do_cx1d): New. - (do_cx1da): New. - (do_cx2): New. - (do_cx2a): New. - (do_cx2d): New. - (do_cx2da): New. - (do_cx3): New. - (do_cx3a): New. - (do_cx3d): New. - (do_cx3da): New. - (handle_pred_state): Define new IT block behaviour. - (insns): Add newn CX*{,d}{,a} instructions. - (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table): - Define new cdecp extension strings. - * doc/c-arm.texi: Document new cdecp extension arguments. - * testsuite/gas/arm/cde-scalar.d: New test. - * testsuite/gas/arm/cde-scalar.s: New test. - * testsuite/gas/arm/cde-warnings.d: New test. - * testsuite/gas/arm/cde-warnings.l: New test. - * testsuite/gas/arm/cde-warnings.s: New test. - * testsuite/gas/arm/cde.d: New test. - * testsuite/gas/arm/cde.s: New test. - -2020-02-10 H.J. Lu - - PR gas/25516 - * config/tc-i386.c (intel64): Renamed to ... - (isa64): This. - (match_template): Accept Intel64 only instruction by default. - (i386_displacement): Updated. - (md_parse_option): Updated. - * c-i386.texi: Update -mamd64/-mintel64 documentation. - * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass - -mamd64 to x86-64-sysenter-amd. - * testsuite/gas/i386/x86-64-sysenter.d: New file. - -2020-02-10 Alan Modra - - * config/obj-elf.c (obj_elf_change_section): Error for section - type, attr or entsize changes in assembly. - * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test. - * testsuite/gas/elf/section5.l: Update. - -2020-02-10 Alan Modra - - * output-file.c (output_file_close): Do a normal close when - flag_always_generate_output. - * write.c (write_object_file): Don't stop output when - flag_always_generate_output. - -2020-02-07 Sergey Belyashov - - PR 25469 - * config/tc-z80.c: Add -gbz80 command line option to generate code - for the GameBoy Z80. Add support for generating DWARF. - * config/tc-z80.h: Add support for DWARF debug information - generation. - * doc/c-z80.texi: Document new command line option. - * testsuite/gas/z80/gbz80_all.d: New file. - * testsuite/gas/z80/gbz80_all.s: New file. - * testsuite/gas/z80/z80.exp: Run the new tests. - * testsuite/gas/z80/z80n_all.d: New file. - * testsuite/gas/z80/z80n_all.s: New file. - * testsuite/gas/z80/z80n_reloc.d: New file. - -2020-02-06 H.J. Lu - - PR gas/25381 - * config/obj-elf.c (get_section): Also check - linked_to_symbol_name. - (obj_elf_change_section): Also set map_head.linked_to_symbol_name. - (obj_elf_parse_section_letters): Handle the 'o' flag. - (build_group_lists): Renamed to ... - (build_additional_section_info): This. Set elf_linked_to_section - from map_head.linked_to_symbol_name. - (elf_adjust_symtab): Updated. - * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name. - * doc/as.texi: Document the 'o' flag. - * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests. - * testsuite/gas/elf/section18.d: New file. - * testsuite/gas/elf/section18.s: Likewise. - * testsuite/gas/elf/section19.d: Likewise. - * testsuite/gas/elf/section19.s: Likewise. - * testsuite/gas/elf/section20.d: Likewise. - * testsuite/gas/elf/section20.s: Likewise. - * testsuite/gas/elf/section21.d: Likewise. - * testsuite/gas/elf/section21.l: Likewise. - * testsuite/gas/elf/section21.s: Likewise. - -2020-02-06 H.J. Lu - - * NEWS: Mention x86 assembler options to align branches for - binutils 2.34. - -2020-02-06 H.J. Lu - - * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique - only for ELF targets. - * testsuite/gas/i386/unique.d: Don't xfail. - * testsuite/gas/i386/x86-64-unique.d: Likewise. - -2020-02-06 Alan Modra - - * testsuite/gas/i386/unique.d: xfail for non-elf targets. - * testsuite/gas/i386/x86-64-unique.d: Likewise. - -2020-02-06 Alan Modra - - * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in - xfail, and rename test. - * testsuite/gas/elf/section12b.d: Likewise. - * testsuite/gas/elf/section16a.d: Likewise. - * testsuite/gas/elf/section16b.d: Likewise. - -2020-02-02 H.J. Lu - - PR gas/25380 - * config/obj-elf.c (section_match): Removed. - (get_section): Also match SEC_ASSEMBLER_SECTION_ID and - section_id. - (obj_elf_change_section): Replace info and group_name arguments - with match_p. Also update the section ID and flags from match_p. - (obj_elf_section): Handle "unique,N". Update call to - obj_elf_change_section. - * config/obj-elf.h (elf_section_match): New. - (obj_elf_change_section): Updated. - * config/tc-arm.c (start_unwind_section): Update call to - obj_elf_change_section. - * config/tc-ia64.c (obj_elf_vms_common): Likewise. - * config/tc-microblaze.c (microblaze_s_data): Likewise. - (microblaze_s_sdata): Likewise. - (microblaze_s_rdata): Likewise. - (microblaze_s_bss): Likewise. - * config/tc-mips.c (s_change_section): Likewise. - * config/tc-msp430.c (msp430_profiler): Likewise. - * config/tc-rx.c (parse_rx_section): Likewise. - * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise. - * doc/as.texi: Document "unique,N" in .section directive. - * testsuite/gas/elf/elf.exp: Run "unique,N" tests. - * testsuite/gas/elf/section15.d: New file. - * testsuite/gas/elf/section15.s: Likewise. - * testsuite/gas/elf/section16.s: Likewise. - * testsuite/gas/elf/section16a.d: Likewise. - * testsuite/gas/elf/section16b.d: Likewise. - * testsuite/gas/elf/section17.d: Likewise. - * testsuite/gas/elf/section17.l: Likewise. - * testsuite/gas/elf/section17.s: Likewise. - * testsuite/gas/i386/unique.d: Likewise. - * testsuite/gas/i386/unique.s: Likewise. - * testsuite/gas/i386/x86-64-unique.d: Likewise. - * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique. - -2020-02-02 H.J. Lu - - * testsuite/gas/elf/section13.s: Replace @nobits with %nobits. - -2020-02-01 Anthony Green - - * config/tc-moxie.c (md_begin): Don't force big-endian mode. - -2020-01-31 Sandra Loosemore - - * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as - %tls_ldo. - -2020-01-31 Andre Vieira - - PR gas/25472 - * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding. - (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for - +mve. - * testsuite/gas/arm/mve_dsp.d: New test. - -2020-01-31 Nick Clifton - - * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE - rather than BFD_RELOC_NONE. - -2020-01-31 Srinath Parvathaneni - - * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" - to support VLDMIA instruction for MVE. - (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB - instruction for MVE. - (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA - instruction for MVE. - (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB - instruction for MVE. - * testsuite/gas/arm/mve-ldst.d: New test. - * testsuite/gas/arm/mve-ldst.s: Likewise. - -2020-01-31 Nick Clifton - - * po/fr.po: Updated French translation. - * po/ru.po: Updated Russian translation. - -2020-01-31 Richard Sandiford - - * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than - .s for the movprfx. - * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly. - * testsuite/gas/aarch64/sve-movprfx_28.d, - * testsuite/gas/aarch64/sve-movprfx_28.l, - * testsuite/gas/aarch64/sve-movprfx_28.s: New test. - -2020-01-30 Jan Beulich - - * config/tc-i386.c (output_disp): Tighten base_opcode check. - * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases. - * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d: - Adjust expectations. - -2020-01-30 Jose E. Marchesi - - * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'. - * testsuite/gas/bpf/alu-be.d: Likewise. - * testsuite/gas/bpf/alu32.d: Likewise for `neg32'. - * testsuite/gas/bpf/alu32-be.d: Likewise. - -2020-01-30 Jan Beulich - - * testsuite/gas/i386/x86-64-branch-2.s, - testsuite/gas/i386/x86-64-branch-4.s, - testsuite/gas/i386/x86-64-branch.s: Add RETW cases. - * testsuite/gas/i386/ilp32/x86-64-branch.d, - testsuite/gas/i386/x86-64-branch-2.d, - testsuite/gas/i386/x86-64-branch-4.l, - testsuite/gas/i386/x86-64-branch.d: Adjust expectations. - -2020-01-30 Jan Beulich - - * config/tc-i386.c (process_suffix): . - testsuite/gas/i386/noreg64.s: Add IRET and LRET cases. - testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET. - Add LRETQ case. - testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without - suffix. - testsuite/gas/i386/x86_64.s: Add RETF cases. - * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d, - testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l, - testsuite/gas/i386/x86-64-opcode.d, - testsuite/gas/i386/x86-64-suffix-intel.d, - testsuite/gas/i386/x86-64-suffix.d, - testsuite/gas/i386/x86_64-intel.d - testsuite/gas/i386/x86_64.d: Adjust expectations. - * testsuite/gas/i386/x86-64-suffix.e, - testsuite/gas/i386/x86_64.e: New. - -2020-01-30 Jan Beulich - - * config/tc-i386.c (process_suffix): Redo and move FLDENV et al - special case. - -2020-01-27 H.J. Lu - - PR binutils/25445 - * config/tc-i386.c (check_long_reg): Also convert to QWORD for - movsxd. - * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA - differences. Document movslq and movsxd. - * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests. - * testsuite/gas/i386/x86-64-movsxd-intel.d: New file. - * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise. - * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise. - * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise. - * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise. - * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise. - * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise. - * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise. - * testsuite/gas/i386/x86-64-movsxd.d: Likewise. - * testsuite/gas/i386/x86-64-movsxd.s: Likewise. - -2020-01-27 Alan Modra - - * testsuite/gas/all/gas.exp: Replace case statements with switch - statements. - * testsuite/gas/elf/elf.exp: Likewise. - * testsuite/gas/macros/macros.exp: Likewise. - * testsuite/lib/gas-defs.exp: Likewise. - -2020-01-27 Tamar Christina - - PR 25403 - * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv. - * testsuite/gas/aarch64/armv8_4-a.s: Likewise. - -2020-01-22 Maxim Blinov - - * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and - s exts must be known, so rename *ok* to *fail*. - * testsuite/gas/riscv/march-ok-sx.d: Likewise. - * testsuite/gas/riscv/march-ok-s-with-version: Likewise. - * testsuite/gas/riscv/march-fail-s.l: Expected error messages for - above change. - * testsuite/gas/riscv/march-fail-sx.l: Likewise. - * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise. - -2020-01-22 H.J. Lu - - PR gas/25438 - * config/tc-i386.c (check_long_reg): Always disallow double word - suffix in mnemonic with word general register. - * testsuite/gas/i386/general.s: Replace word general register - with double word general register for movl. - * testsuite/gas/i386/inval.s: Add tests for movl with word general - register. - * testsuite/gas/i386/general.l: Updated. - * testsuite/gas/i386/inval.l: Likewise. - -2020-01-22 Alan Modra - - * config/tc-ppc.c (parse_tls_arg): Handle tls arg for - __tls_get_addr_desc and __tls_get_addr_opt. - -2020-01-21 Jan Beulich - - * testsuite/gas/i386/inval-crc32.s, - testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive. - * testsuite/gas/i386/inval-crc32.l, - testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations. - -2020-01-21 Jan Beulich - - * config/tc-i386.c (process_suffix): Merge CRC32 handling into - generic code path. Deal with No_lSuf being set in a template. - * testsuite/gas/i386/inval-crc32.l, - testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s) - instead of error(s) when operand size is ambiguous. - * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s, - testsuite/gas/i386/noreg64.s: Add CRC32 tests. - * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l, - testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l, - testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l: - Adjust expectations. - -2020-01-21 Jan Beulich - - * config/tc-i386.c (process_suffix): Drop SYSRET special case - and an intel_syntax check. Re-write lack-of-suffix processing - logic. - * doc/c-i386.texi: Document operand size defaults for suffix- - less AT&T syntax insns. - * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s, - testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s, - testsuite/gas/i386/x86-64-avx-scalar.s, - testsuite/gas/i386/x86-64-avx.s, - testsuite/gas/i386/x86-64-bundle.s, - testsuite/gas/i386/x86-64-intel64.s, - testsuite/gas/i386/x86-64-lock-1.s, - testsuite/gas/i386/x86-64-opcode.s, - testsuite/gas/i386/x86-64-sse2avx.s, - testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes. - * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s, - testsuite/gas/i386/x86-64-nops.s, - testsuite/gas/i386/x86-64-ptwrite.s, - testsuite/gas/i386/x86-64-simd.s, - testsuite/gas/i386/x86-64-sse-noavx.s, - testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less - insns. - * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s, - testsuite/gas/i386/noreg64.s: Add further tests. - * testsuite/gas/i386/ilp32/x86-64-nops.d, - testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d, - testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d, - testsuite/gas/i386/sse-noavx.d, - testsuite/gas/i386/x86-64-intel64.d, - testsuite/gas/i386/x86-64-nops.d, - testsuite/gas/i386/x86-64-opcode.d, - testsuite/gas/i386/x86-64-ptwrite-intel.d, - testsuite/gas/i386/x86-64-ptwrite.d, - testsuite/gas/i386/x86-64-simd-intel.d, - testsuite/gas/i386/x86-64-simd-suffix.d, - testsuite/gas/i386/x86-64-simd.d, - testsuite/gas/i386/x86-64-sse-noavx.d - testsuite/gas/i386/x86-64-suffix.d, - testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations. - * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l, - testsuite/gas/i386/noreg64.l: New. - * testsuite/gas/i386/i386.exp: Run new tests. - -2020-01-21 Jan Beulich - - * testsuite/gas/i386/avx512_bf16_vl.s, - testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms - of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax - broadcast forms of VCVTNEPS2BF16. - * testsuite/gas/i386/avx512_bf16_vl.d, - testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations. - -2020-01-20 Nick Clifton - - * po/uk.po: Updated Ukranian translation. - -2020-01-20 H.J. Lu - - PR ld/25416 - * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix - for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating - x32 object. - * testsuite/gas/i386/ilp32/x32-tls.d: Updated. - * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with - R_X86_64_GOTPC32_TLSDESC relocation. - -2020-01-18 Nick Clifton - - * configure: Regenerate. - * po/gas.pot: Regenerate. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-17 H.J. Lu - - * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2 - with vex_encoding_vex. - (parse_insn): Likewise. - * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex} - and {vex3} documentation. - * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with - {vex}. - * testsuite/gas/i386/x86-64-pseudos.s: Likewise. - -2020-01-16 Andre Vieira - - PR 25376 - * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH. - (armv8_1m_main_ext_table): Use CORE_HIGH for mve. - * testsuite/arm/armv8_1-m-fpu-mve-1.s: New. - * testsuite/arm/armv8_1-m-fpu-mve-1.d: New. - * testsuite/arm/armv8_1-m-fpu-mve-2.s: New. - * testsuite/arm/armv8_1-m-fpu-mve-2.d: New. - -2020-01-16 Jan Beulich - - * config/tc-i386.c (match_template): Drop found_cpu_match local - variable. - -2020-01-16 Jan Beulich - - * testsuite/gas/i386/avx512dq-inval.l, - testsuite/gas/i386/avx512dq-inval.s: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2020-01-15 Jozef Lawrynowicz - - * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X - relocations when the target is 430X, except when extracting part of an - expression. - (msp430_srcoperand): Adjust comment. - Initialize the expp member of the msp430_operand_s struct as - appropriate. - (msp430_dstoperand): Likewise. - * testsuite/gas/msp430/msp430.exp: Run new test. - * testsuite/gas/msp430/reloc-lo-430x.d: New test. - * testsuite/gas/msp430/reloc-lo-430x.s: New test. - -2020-01-15 Alan Modra - - * configure.tgt: Add sparc-*-freebsd case. - -2020-01-14 Lili Cui - - * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin. - * testsuite/gas/i386/align-branch-1b.d: Likewise. - * testsuite/gas/i386/align-branch-1c.d: Likewise. - * testsuite/gas/i386/align-branch-1d.d: Likewise. - * testsuite/gas/i386/align-branch-1e.d: Likewise. - * testsuite/gas/i386/align-branch-1f.d: Likewise. - * testsuite/gas/i386/align-branch-1g.d: Likewise. - * testsuite/gas/i386/align-branch-1h.d: Likewise. - * testsuite/gas/i386/align-branch-1i.d: Likewise. - * testsuite/gas/i386/align-branch-5.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise. - * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise. - * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a, - x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin. - -2020-01-14 Sergey Belyashov - - PR 25377 - * config/tc-z80.c: Add support for half precision, single - precision and double precision floating point values. - * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes. - * doc/as.texi: Add new z80 command line options. - * doc/c-z80.texi: Document new z80 command line options. - * testsuite/gas/z80/ez80_pref_dis.s: New test. - * testsuite/gas/z80/ez80_pref_dis.d: New test driver. - * testsuite/gas/z80/z80.exp: Run the new test. - * testsuite/gas/z80/fp_math48.d: Use correct command line option. - * testsuite/gas/z80/fp_zeda32.d: Likewise. - * testsuite/gas/z80/strings.d: Update expected output. - -2020-01-13 Matthew Malcomson - - * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature - dependency. - -2020-01-13 Claudiu Zissulescu - - * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change - the CPU. - * config/tc-arc.h: Add header if/defs. - * testsuite/gas/arc/pseudos.d: Improve matching pattern. - -2020-01-13 Alan Modra - - * testsuite/gas/wasm32/allinsn.d: Update expected output. - -2020-01-13 Alan Modra - - * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap - insertion. - -2020-01-10 Alan Modra - - * testsuite/gas/elf/pr14891.s: Don't start directives in first column. - * testsuite/gas/elf/pr21661.d: Don't run on hpux. - -2020-01-03 Sergey Belyashov - - PR 25224 - * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking - opcode byte values. - (emit_ld_r_r): Likewise. - (emit_ld_rr_m): Likewise. - (emit_ld_rr_nn): Likewise. - -2020-01-09 Jan Beulich - - * config/tc-i386.c (optimize_encoding): Add - is_any_vex_encoding() invocations. Drop respective - i.tm.extension_opcode == None checks. - -2020-01-09 Jan Beulich - - * config/tc-i386.c (md_assemble): Check RegRex is clear during - REX transformations. Correct comment indentation. - -2020-01-09 Jan Beulich - - * config/tc-i386.c (optimize_encoding): Generalize register - transformation for TEST optimization. - -2020-01-09 Jan Beulich - - * testsuite/gas/i386/x86-64-sysenter-amd.s, - testsuite/gas/i386/x86-64-sysenter-amd.d, - testsuite/gas/i386/x86-64-sysenter-amd.l, - testsuite/gas/i386/x86-64-sysenter-intel.d, - testsuite/gas/i386/x86-64-sysenter-mixed.d: New. - * testsuite/gas/i386/i386.exp: Run new tests. - -2020-01-08 Nick Clifton - - PR 25284 - * doc/as.texi (Align): Document the fact that all arguments can be - omitted. - (Balign): Likewise. - (P2align): Likewise. - -2020-01-08 Nick Clifton - - PR 14891 - * config/obj-elf.c (obj_elf_section): Fail if the section name is - already defined as a different symbol type. - * testsuite/gas/elf/pr14891.s: New test source file. - * testsuite/gas/elf/pr14891.d: New test driver. - * testsuite/gas/elf/pr14891.s: New test expected error output. - * testsuite/gas/elf/elf.exp: Run the new test. - -2020-01-08 Alan Modra - - * config/tc-z8k.c (md_begin): Make idx unsigned. - (get_specific): Likewise for this_index. - -2020-01-07 Claudiu Zissulescu - - * onfig/tc-arc.c (parse_reloc_symbol): New function. - (tokenize_arguments): Clean up, use parse_reloc_symbol function. - (md_operand): Set X_md to absent. - (arc_parse_name): Check for X_md. - -2020-01-03 Sergey Belyashov - - PR 25311 - * as.h (TC_STRING_ESCAPES): Provide a default definition. - * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of - NO_STRING_ESCAPES. - * read.c (next_char_of_string): Likewise. - * config/tc-ppc.h (TC_STRING_ESCAPES): Define. - * config/tc-z80.h (TC_STRING_ESCAPES): Define. - -2020-01-03 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2020-01-03 Jan Beulich - - * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}. - * testsuite/gas/aarch64/f64mm.d: Adjust expectations. - -2020-01-03 Jan Beulich - - * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for - by-element usdot. Add 64-bit form tests for by-element sudot. - * testsuite/gas/aarch64/i8mm.d: Adjust expectations. - -2020-01-03 Jan Beulich - - * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip. - * testsuite/gas/aarch64/f64mm.d: Adjust expectations. - -2020-01-03 Jan Beulich - - * testsuite/gas/aarch64/f64mm.d, - testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations. - -2020-01-02 Sergey Belyashov - - * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add - support for assembler code generated by SDCC. Add new relocation - types. Add z80-elf target support. - * config/tc-z80.h: Add z80-elf target support. Enable dollar local - labels. Local labels starts from ".L". - * NEWS: Mention the new support. - * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict. - * testsuite/gas/all/fwdexp.s: Likewise. - * testsuite/gas/all/cond.l: Likewise. - * testsuite/gas/all/cond.s: Likewise. - * testsuite/gas/all/fwdexp.d: Likewise. - * testsuite/gas/all/fwdexp.s: Likewise. - * testsuite/gas/elf/section2.e-mips: Likewise. - * testsuite/gas/elf/section2.l: Likewise. - * testsuite/gas/elf/section2.s: Likewise. - * testsuite/gas/macros/app1.d: Likewise. - * testsuite/gas/macros/app1.s: Likewise. - * testsuite/gas/macros/app2.d: Likewise. - * testsuite/gas/macros/app2.s: Likewise. - * testsuite/gas/macros/app3.d: Likewise. - * testsuite/gas/macros/app3.s: Likewise. - * testsuite/gas/macros/app4.d: Likewise. - * testsuite/gas/macros/app4.s: Likewise. - * testsuite/gas/macros/app4b.s: Likewise. - * testsuite/gas/z80/suffix.d: Fix failure on ELF target. - * testsuite/gas/z80/z80.exp: Add new tests - * testsuite/gas/z80/dollar.d: New file. - * testsuite/gas/z80/dollar.s: New file. - * testsuite/gas/z80/ez80_adl_all.d: New file. - * testsuite/gas/z80/ez80_adl_all.s: New file. - * testsuite/gas/z80/ez80_adl_suf.d: New file. - * testsuite/gas/z80/ez80_isuf.s: New file. - * testsuite/gas/z80/ez80_z80_all.d: New file. - * testsuite/gas/z80/ez80_z80_all.s: New file. - * testsuite/gas/z80/ez80_z80_suf.d: New file. - * testsuite/gas/z80/r800_extra.d: New file. - * testsuite/gas/z80/r800_extra.s: New file. - * testsuite/gas/z80/r800_ii8.d: New file. - * testsuite/gas/z80/r800_z80_doc.d: New file. - * testsuite/gas/z80/z180.d: New file. - * testsuite/gas/z80/z180.s: New file. - * testsuite/gas/z80/z180_z80_doc.d: New file. - * testsuite/gas/z80/z80_doc.d: New file. - * testsuite/gas/z80/z80_doc.s: New file. - * testsuite/gas/z80/z80_ii8.d: New file. - * testsuite/gas/z80/z80_ii8.s: New file. - * testsuite/gas/z80/z80_in_f_c.d: New file. - * testsuite/gas/z80/z80_in_f_c.s: New file. - * testsuite/gas/z80/z80_op_ii_ld.d: New file. - * testsuite/gas/z80/z80_op_ii_ld.s: New file. - * testsuite/gas/z80/z80_out_c_0.d: New file. - * testsuite/gas/z80/z80_out_c_0.s: New file. - * testsuite/gas/z80/z80_reloc.d: New file. - * testsuite/gas/z80/z80_reloc.s: New file. - * testsuite/gas/z80/z80_sli.d: New file. - * testsuite/gas/z80/z80_sli.s: New file. - -2020-01-02 Szabolcs Nagy - - * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of - REGLIST_RN. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2019 +For older changes see ChangeLog-2020 -Copyright (C) 2020 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gas/ChangeLog-2020 b/gas/ChangeLog-2020 new file mode 100644 index 00000000000..8cdf93b6a2e --- /dev/null +++ b/gas/ChangeLog-2020 @@ -0,0 +1,6119 @@ +2020-12-18 Alan Modra + + * ecoff.c (ecoff_frob_symbol): Rename scom_section to + ecoff_scom_section, move to file scope and statically initialise. + +2020-12-16 Alan Modra + + * config/obj-elf.c (obj_elf_section): Don't set elf_osabi here. + (obj_elf_type): Likewise. + +2020-12-15 Alan Modra + + PR 27071 + * config/obj-elf.c (elf_obj_symbol_clone_hook): New function. + (elf_format_ops): Set symbol_clone_hook. + * config/obj-elf.h (elf_obj_symbol_clone_hook): Declare. + (obj_symbol_clone_hook): Define. + * listing.c (buffer_line): Avoid integer overflow on paper_width + set to zero. + +2020-12-14 Alan Modra + + * testsuite/gas/elf/section27.s: Reorder .text, .data and .bss + so that output section order does not depend on those sections + being already created. Use ".section .text" rather than ".text". + +2020-12-13 Borislav Petkov + + * testsuite/gas/i386/align-branch-9.s: Don't use labels that are + automatically local for ELF targets. + * testsuite/gas/i386/branch.s: Likewise. + * testsuite/gas/i386/x86-64-align-branch-9.s: Likewise. + * testsuite/gas/i386/x86-64-branch.s: Likewise. + * testsuite/gas/i386/align-branch-9.d: Adjust to match more targets. + * testsuite/gas/i386/branch.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-branch.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-9.d: Likewise. + * testsuite/gas/i386/x86-64-branch.d: Likewise. + +2020-12-11 Sergey Belyashov + Nick Clifton + + PR 27047 + * config/tc-z80.c (s_bss): New function. + (md_pseudo_table): Add bss entry. + +2020-12-10 Nelson Chu + + * config/tc-riscv.c (riscv_ext): New function. Use md_assemblef + to expand the zext and sext pseudos, to give them a chance to be + expanded into c-ext instructions. + (macro): Handle M_ZEXTH, M_ZEXTW, M_SEXTB and M_SEXTH. + * testsuite/gas/riscv/ext.s: New testcase. + * testsuite/gas/riscv/ext-32.d: Likewise. + * testsuite/gas/riscv/ext-64.d: Likewise. + +2020-12-10 Nelson Chu + + * config/tc-riscv.c (riscv_multi_subset_supports): Handle INSN_CLASS_ZICSR + and INSN_CLASS_ZIFENCEI. + * testsuite/gas/riscv/march-imply-i.s: New testcase. + * testsuite/gas/riscv/march-imply-i2p0-01.d: New testcase. The version + of i is less than 2.1, and zi* are supported in the chosen spec, so + enable the fence.i and csr instructions, also output the implicit zi* to + the arch string. + * testsuite/gas/riscv/march-imply-i2p0-02.d: Likewise, but the zi* are + not supported in the spec 2.2. Enable the related instructions since + i's version is less than 2.1, but do not output them. + * testsuite/gas/riscv/march-imply-i2p1-01.d: New testcase. The version + of i is 2.1, so don't add it's implicit zi*, and disable the related + instructions. + * testsuite/gas/riscv/march-imply-i2p1-01.l: Likewise. + * testsuite/gas/riscv/march-imply-i2p1-02.d: Likewise, and set the zi* + explicitly, so enable the related instructions. + * testsuite/gas/riscv/march-imply-i2p0.d: Removed. + * testsuite/gas/riscv/march-imply-i2p1.d: Removed. + +2020-12-08 H.J. Lu + + * config/obj-elf.c (SEC_ASSEMBLER_SHF_MASK): New. + (get_section_by_match): Also check if SEC_ASSEMBLER_SHF_MASK of + sh_flags matches. Rename info to sh_info. + (obj_elf_change_section): Don't check previous SHF_GNU_RETAIN. + Rename info to sh_info. + (obj_elf_section): Rename info to sh_info. Set sh_flags for + SHF_GNU_RETAIN. + * config/obj-elf.h (elf_section_match): Rename info to sh_info. + Add sh_flags. + * testsuite/gas/elf/elf.exp: Run section27. + * testsuite/gas/elf/section24b.d: Updated. + * testsuite/gas/elf/section27.d: New file. + * testsuite/gas/elf/section27.s: Likewise. + +2020-12-04 Andreas Krebbel + + * testsuite/gas/s390/zarch-z10.s: Add tests for risbgz. + * testsuite/gas/s390/zarch-z10.d: Add regexp for risbgz. + * testsuite/gas/s390/zarch-zEC12.s: Add tests for risbgnz. + * testsuite/gas/s390/zarch-zEC12.d: Add regexp for risbgnz. + +2020-12-03 Andreas Krebbel + + * testsuite/gas/s390/esa-g5.s: Test new extended mnemonics. + * testsuite/gas/s390/esa-g5.d: Likewise. + * testsuite/gas/s390/esa-z900.s: Likewise. + * testsuite/gas/s390/esa-z900.d: Likewise. + * testsuite/gas/s390/zarch-z900.s: Likewise. + * testsuite/gas/s390/zarch-z900.d: Likewise. + +2020-12-01 Nelson Chu + + * testsuite/gas/riscv/attribute-10.d: Updated. + * testsuite/gas/riscv/march-imply-g.d: New testcase for g. + * testsuite/gas/riscv/march-imply-unsupported.d: The zicsr and zifencei + are not supported in the ISA spec v2.2, so don't add and output them. + +2020-12-01 Nelson Chu + + * config/tc-riscv.c (riscv_subset_supports): Updated. + * testsuite/gas/riscv/march-imply-i2p0.d: New testcase. Need to + add the implicit zicsr and zifencei when i's version less than 2.1. + * testsuite/gas/riscv/march-imply-i2p1.d: New testcase. + * testsuite/gas/riscv/march-imply-d.d: Likewise. + * testsuite/gas/riscv/march-imply-f.d: Likewise. + * testsuite/gas/riscv/march-imply-q.d: Likewise. + * testsuite/gas/riscv/march-fail-rv32iq.l: Updated. + * testsuite/gas/riscv/march-fail-rv32id.d: Removed. + * testsuite/gas/riscv/march-fail-rv32id.l: Likewise. + * testsuite/gas/riscv/march-fail-rv64iq.d: Likewise. + * testsuite/gas/riscv/march-fail-rv64iq.l: Likewise. + +2020-12-01 Nelson Chu + + * config/tc-riscv.c (riscv_get_default_ext_version): + Change the version type from unsigned to int. + (riscv_set_arch): Use as_bad rather than as_fatal to + report more errors. + * testsuite/gas/riscv/attribute-02.d: Updated since x must be + set with versions. + * testsuite/gas/riscv/attribute-03.d: Likewise. + * testsuite/gas/riscv/march-ok-two-nse.d: Likewise. + * testsuite/gas/riscv/attribute-09.d: zicsr wasn't supported + in the spec 2.2, so choose the newer spec. + * testsuite/gas/riscv/march-fail-base-01.l: Updated since as_bad. + * testsuite/gas/riscv/march-fail-base-02.l: Likewise. + * testsuite/gas/riscv/march-fail-order-std.l: Likewise. + * testsuite/gas/riscv/march-fail-order-x.l: Likewise. + * testsuite/gas/riscv/march-fail-order-z.l: Likewise. + * testsuite/gas/riscv/march-fail-porder.l: Likewise. + * testsuite/gas/riscv/march-fail-rv32ef.l: Likewise. + * testsuite/gas/riscv/march-fail-rv32id.l: Likewise. + * testsuite/gas/riscv/march-fail-rv32iq.l: Likewise. + * testsuite/gas/riscv/march-fail-rv64iq.l: Likewise. + * testsuite/gas/riscv/march-fail-single-char.l: Likewise. + * testsuite/gas/riscv/march-fail-unknown-std.l: Likewise. + * testsuite/gas/riscv/march-fail-unknown.l: Likewise. + * testsuite/gas/riscv/march-fail-uppercase.l: Likewise. + * testsuite/gas/riscv/march-fail-version.l: Likewise. + * testsuite/gas/riscv/march-fail-isa-spec.d: Likewise. + * testsuite/gas/riscv/march-fail-isa-spec.l: Likewise. + +2020-12-01 Nelson Chu + + * testsuite/gas/riscv/march-fail-order-z.d: New testcase, check + orders of prefixed z extensions. + * testsuite/gas/riscv/march-fail-order-z.l: Likewise. + * testsuite/gas/riscv/march-fail-single-char-h.d: New testcase. + * testsuite/gas/riscv/march-fail-single-char.l: Updated. + * testsuite/gas/riscv/march-fail-unknown-h.d: New testcase. + * testsuite/gas/riscv/march-fail-unknown.l: Updated. + +2020-12-01 Nelson Chu + + * testsuite/gas/riscv/march-fail-uppercase-base.d: Updated. + * testsuite/gas/riscv/march-fail-uppercase.l: Updated. + * testsuite/gas/riscv/march-fail-uppercase-x.d: New testcase. + +2020-12-01 Nelson Chu + + (These are new testcases that cover more cases) + * testsuite/gas/riscv/march-fail-base-01.d: The first extension must + be e, i or g. + * testsuite/gas/riscv/march-fail-base-01.l: Likewise. + * testsuite/gas/riscv/march-fail-base-02.d: rv64e is an invalid base ISA. + * testsuite/gas/riscv/march-fail-base-02.l: Likewise. + * testsuite/gas/riscv/march-fail-order-std.d: Check orders of standard + extensions. + * testsuite/gas/riscv/march-fail-order-std.l: Likewise. + * testsuite/gas/riscv/march-fail-order-x.d: Check orders of prefixed + x extensions. + * testsuite/gas/riscv/march-fail-order-x.l: Likewise. + * testsuite/gas/riscv/march-fail-porder-x-std.d: Check orders when + standard and prefixed extensions are set at the same time. + * testsuite/gas/riscv/march-fail-porder-x-z.d: Likewise. + * testsuite/gas/riscv/march-fail-porder-z-std.d: Likewise. + * testsuite/gas/riscv/march-fail-porder.l: Likewise. + * testsuite/gas/riscv/march-fail-single-char-s.d: Only standard + extensions can use single char. + * testsuite/gas/riscv/march-fail-single-char-x.d: Likewise. + * testsuite/gas/riscv/march-fail-single-char-z.d: Likewise. + * testsuite/gas/riscv/march-fail-single-char.l: Likewise. + * testsuite/gas/riscv/march-fail-unknown-s.d: All extensions + should be known, except the non-standard x extensions. + * testsuite/gas/riscv/march-fail-unknown-std.d: Likewise. + * testsuite/gas/riscv/march-fail-unknown-std.l: Likewise. + * testsuite/gas/riscv/march-fail-unknown-z.d: Likewise. + * testsuite/gas/riscv/march-fail-unknown.l: Likewise. + * testsuite/gas/riscv/march-fail-uppercase-base.d: Do not + allow any uppercase in the arch string. + * testsuite/gas/riscv/march-fail-uppercase-std.d: Likewise. + * testsuite/gas/riscv/march-fail-uppercase-z.d: Likewise. + * testsuite/gas/riscv/march-fail-uppercase.l: Likewise. + * testsuite/gas/riscv/march-fail-version-x.d: Failed to set versions. + * testsuite/gas/riscv/march-fail-version-z.d: Likewise. + * testsuite/gas/riscv/march-fail-version.l: Likewise. + * testsuite/gas/riscv/march-fail-rv32ef.l: Updated. + * testsuite/gas/riscv/march-fail-rv32id.d: Need f-ext. + * testsuite/gas/riscv/march-fail-rv32iq.d: Should be rv64. + * testsuite/gas/riscv/march-fail-rv32iq.l: Likewise. + * testsuite/gas/riscv/march-fail-rv64iq.d: Need d-ext and f-ext. + * testsuite/gas/riscv/march-fail-rv64iq.l: Likewise. + + (The following testcases are removed and covered by new testcases) + * testsuite/gas/riscv/march-fail-rv32i.d: march-fail-uppercase-base. + * testsuite/gas/riscv/march-fail-rv32i.l: Likewise. + * testsuite/gas/riscv/march-fail-rv32iam.d: march-fail-order-std. + * testsuite/gas/riscv/march-fail-rv32iam.l: Likewise. + * testsuite/gas/riscv/march-fail-rv32ic.d: march-fail-uppercase-std. + * testsuite/gas/riscv/march-fail-rv32ic.l: Likewise. + * testsuite/gas/riscv/march-fail-rv32icx2p.d: march-fail-version-x. + * testsuite/gas/riscv/march-fail-rv32icx2p.l: Likewise. + * testsuite/gas/riscv/march-fail-rv32imc.d: march-fail-order-std. + * testsuite/gas/riscv/march-fail-rv32imc.l: Likewise. + * testsuite/gas/riscv/march-fail-rv64I.d: march-fail-uppercase-std. + * testsuite/gas/riscv/march-fail-rv64I.l: Likewise. + * testsuite/gas/riscv/march-fail-rv64e.d: march-fail-base-02. + * testsuite/gas/riscv/march-fail-rv64e.l: Likewise. + * testsuite/gas/riscv/march-fail-s-with-version.d: march-fail-unknown-s. + * testsuite/gas/riscv/march-fail-s-with-version.l: Likewise. + * testsuite/gas/riscv/march-fail-s.d: march-fail-unknown-s. + * testsuite/gas/riscv/march-fail-s.l: Likewise. + * testsuite/gas/riscv/march-fail-sx.d: march-fail-unknown-s. + * testsuite/gas/riscv/march-fail-sx.l: Likewise. + +2002-11-29 Borislav Petkov + + * testsuite/gas/i386/branch.d: Add new branch insns test. + * testsuite/gas/i386/branch.s: Likewise. + * testsuite/gas/i386/i386.exp: Insert the new branch test. + * testsuite/gas/i386/x86-64-branch.d: Test for branch hints insns. + * testsuite/gas/i386/x86-64-branch.s: Likewise. + * testsuite/gas/i386/ilp32/x86-64-branch.d: Likewise. + +2020-11-27 Jozef Lawrynowicz + + * testsuite/gas/elf/elf.exp: Run new tests. + * testsuite/gas/elf/section25.d: New test. + * testsuite/gas/elf/section25.s: New test. + * testsuite/gas/elf/section26.d: New test. + * testsuite/gas/elf/section26.s: New test. + +2020-11-25 Alan Modra + + * output-file.c (output_file_close): Remove "can't close" from + error message. + * testsuite/gas/mips/reginfo-2.l: Update expected output. + +2020-11-04 Przemyslaw Wirkus + + * config/tc-aarch64.c (aarch64_cpus): Add Cortex-A78C. + * doc/c-aarch64.texi: Document -mcpu=cortex-a78c. + * doc/NEWS: Update news. + +2020-11-19 Jozef Lawrynowicz + + * testsuite/gas/elf/section22.d: Allow FreeBSD OSABI in readelf + output. + * testsuite/gas/elf/section23a.d: Likewise. + * testsuite/gas/elf/section24a.d: Likewise. + +2020-11-18 Alan Modra + + * doc/as.texi (.nop): Document optional size arg. + * dwarf2dbg.c (dwarf2_gen_line_info_1): Only check SEC_ALLOC + when ELF. Warn whenever dwarf line number information is ignored. + * frags.c (frag_offset_ignore_align_p): New function. + * frags.h (frag_offset_ignore_align_p): Declare. + * read.c (s_nop): Extend to support optional size arg. + * testsuite/gas/elf/dwarf2-20.d: Expect warnings, and exact range. + * testsuite/gas/elf/dwarf2-20.s: Emit 16 bytes worth of nops. + * testsuite/gas/m68hc11/indexed12.d: Expect warnings. + +2020-11-18 Jozef Lawrynowicz + H.J. Lu + + * NEWS: Announce SHF_GNU_RETAIN support. + * config/obj-elf.c (obj_elf_change_section): Merge SHF_GNU_RETAIN bit + between section declarations. + (obj_elf_parse_section_letters): Handle 'R' flag. + Handle numeric flag values within the SHF_MASKOS range. + (obj_elf_section): Validate SHF_GNU_RETAIN usage. + * doc/as.texi: Document 'R' flag to .section directive. + * testsuite/gas/elf/elf.exp: Run new tests. + * testsuite/gas/elf/section10.d: Unset SHF_GNU_RETAIN bit. + * testsuite/gas/elf/section10.s: Likewise. + * testsuite/gas/elf/section22.d: New test. + * testsuite/gas/elf/section22.s: New test. + * testsuite/gas/elf/section23.s: New test. + * testsuite/gas/elf/section23a.d: New test. + * testsuite/gas/elf/section23b.d: New test. + * testsuite/gas/elf/section23b.err: New test. + * testsuite/gas/elf/section24.s: New test. + * testsuite/gas/elf/section24a.d: New test. + * testsuite/gas/elf/section24b.d: New test. + +2020-11-13 Przemyslaw Wirkus + + * NEWS: Update news. + * config/tc-aarch64.c: Add option +pauth to -march. + * doc/c-aarch64.texi: Update docs. + * testsuite/gas/aarch64/pac-feat.d: New test. + * testsuite/gas/aarch64/pac-feat.s: New test. + +2020-11-16 Przemyslaw Wirkus + + * NEWS: Update news. + * config/tc-aarch64.c: New feature flag +flagm. + * doc/c-aarch64.texi: Update docs. + * testsuite/gas/aarch64/flagm.d: New test. + * testsuite/gas/aarch64/flagm.s: New test. + +2020-11-16 Przemyslaw Wirkus + + * config/tc-arm.c (arm_cpus): Add Cortex-A78C. + * doc/c-arm.texi: Document -mcpu=cortex-a78c. + * testsuite/gas/arm/cpu-cortex-a78c.d: New test. + +2020-11-14 Borislav Petkov + + * testsuite/gas/i386/x86-64-segovr.d: Adjust regexes. + * testsuite/gas/i386/x86-64-nops.d: Likewise. + * testsuite/gas/i386/x86-64-nops-1.d: Likewise. + * testsuite/gas/i386/x86-64-nops-1-g64.d: Likewise. + * testsuite/gas/i386/x86-64-nops-1-core2.d: Likewise. + * testsuite/gas/i386/x86-64-nops-1-k8.d: Likewise. + * testsuite/gas/i386/x86-64-nops-2.d: Likewise. + * testsuite/gas/i386/x86-64-nops-3.d: Likewise. + * testsuite/gas/i386/x86-64-nops-4.d: Likewise. + * testsuite/gas/i386/x86-64-nops-4-core2.d: Likewise. + * testsuite/gas/i386/x86-64-nops-4-k8.d: Likewise. + * testsuite/gas/i386/x86-64-nops-5.d: Likewise. + * testsuite/gas/i386/x86-64-nops-5-k8.d: Likewise. + * testsuite/gas/i386/x86-64-nops-7.d: Likewise. + * testsuite/gas/i386/x86-64-nop-1.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-2c.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-6.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-7.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-8.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-1-core2.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-1-k8.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-1.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-2.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-3.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-4-core2.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-4-k8.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-4.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-5-k8.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops-5.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-nops.d:: Likewise. + +2020-11-12 Jozef Lawrynowicz + + * config/tc-msp430.c (OPTION_MOVE_DATA): Define. + (md_parse_option): Ignore OPTION_MOVE_DATA. + (md_longopts): Handle -md option. + * testsuite/gas/msp430/msp430.exp: Run new test. + * testsuite/gas/msp430/empty.s: New test. + * testsuite/gas/msp430/ignore-md.d: New test. + +2020-11-12 Nick Clifton + + PR 26850 + * dwarf2dbg.c (dwarf2_gen_line_info_1): Do not record lines in + sections that are not executable or not loadable. + (out_debug_line): Move warning message into dwarf2_gen_line_info_1. + * testsuite/gas/elf/dwarf2-20.s: New test. + * testsuite/gas/elf/dwarf2-20.d: New test driver. + * testsuite/gas/elf/elf.exp: Run the new test. + * testsuite/gas/elf/warn-2.s: Use the .nop directive. + +2020-11-11 Przemyslaw Wirkus + + * testsuite/gas/aarch64/ls64.s: Update test. + +2020-11-09 Denys Zagorui + + * config/obj-elf (obj_elf_init_stab_section): Improve + reproducibility for stabs debugging data format + +2020-11-09 Spencer E. Olson + + * testsuite/gas/pru/misc.s: Add tests for lmbd (left-most bit + detect). + * testsuite/gas/pru/misc.d: Update expected disassembly. + +2020-11-09 Przemyslaw Wirkus + + * config/tc-aarch64.c: Fix comment. + * testsuite/gas/aarch64/ls64.d: New test. + * testsuite/gas/aarch64/ls64.s: Test for ACCDATA_EL1 register. + +2020-11-09 Przemyslaw Wirkus + + * config/tc-aarch64.c (process_omitted_operand): Add AARCH64_OPND_Rt_LS64. + (parse_operands): Parse Rt range for AARCH64_OPND_Rt_LS64. + * testsuite/gas/aarch64/ls64-invalid.l: Update test. + * testsuite/gas/aarch64/ls64-invalid.s: Update test. + * testsuite/gas/aarch64/ls64.s: Update test. + +2020-11-09 Andreas Schwab + + * Makefile.am (development.exp): Fix regexp. + * Makefile.in: Regenerate. + +2020-11-09 Nelson Chu + + * config/tc-riscv.c (explicit_mabi): New boolean to indicate if + the -mabi= option is explictly set. + (md_parse_option): Set explicit_mabi to TRUE if -mabi is set. + (riscv_set_abi_by_arch): New function. If the -mabi option isn't + set, then we set the abi according to the architecture string. + Otherwise, check if there are conflicts between architecture + and abi setting. + (riscv_after_parse_args): Move the abi setting to md_assemble nad + riscv_elf_final_processing. + (md_assemble): Call the riscv_set_abi_by_arch when we set the + start_assemble to TRUE. + (riscv_elf_final_processing): Likewise, in case the file without + any instruction. + * testsuite/gas/riscv/mabi-attr-01.s: New testcase. + * testsuite/gas/riscv/mabi-attr-02.s: Likewise. + * testsuite/gas/riscv/mabi-attr-03.s: Likewise. + * testsuite/gas/riscv/mabi-fail-01.d: Likewise. + * testsuite/gas/riscv/mabi-fail-01.l: Likewise. + * testsuite/gas/riscv/mabi-fail-02.d: Likewise. + * testsuite/gas/riscv/mabi-fail-02.l: Likewise. + * testsuite/gas/riscv/mabi-noabi-attr-01a.d: Likewise. + * testsuite/gas/riscv/mabi-noabi-attr-01b.d: Likewise. + * testsuite/gas/riscv/mabi-noabi-attr-02a.d: Likewise. + * testsuite/gas/riscv/mabi-noabi-attr-02b.d: Likewise. + * testsuite/gas/riscv/mabi-noabi-attr-03a.d: Likewise. + * testsuite/gas/riscv/mabi-noabi-attr-03b.d: Likewise. + * testsuite/gas/riscv/mabi-noabi-march-01.d: Likewise. + * testsuite/gas/riscv/mabi-noabi-march-02.d: Likewise. + * testsuite/gas/riscv/mabi-noabi-march-03.d: Likewise. + +2020-11-04 Przemyslaw Wirkus + + * testsuite/gas/aarch64/armv8-ras-1_1-invalid.d: New test. + * testsuite/gas/aarch64/armv8-ras-1_1-invalid.l: New test. + * testsuite/gas/aarch64/armv8-ras-1_1-invalid.s: New test. + * testsuite/gas/aarch64/armv8-ras-1_1.d: New test. + * testsuite/gas/aarch64/armv8-ras-1_1.s: New test. + * testsuite/gas/aarch64/illegal-ras-1.d: Remove. + * testsuite/gas/aarch64/illegal-ras-1.l: Remove. + * testsuite/gas/aarch64/illegal-ras-1.s: Remove. + * testsuite/gas/aarch64/illegal-sysreg-2.d: Remove. + * testsuite/gas/aarch64/illegal-sysreg-2.l: Remove. + +2020-11-03 Przemyslaw Wirkus + + * NEWS: Update docs. + * config/tc-aarch64.c: Add +ls64 feature to -march flags set. + * testsuite/gas/aarch64/ls64-invalid.d: New test. + * testsuite/gas/aarch64/ls64-invalid.l: New test. + * testsuite/gas/aarch64/ls64-invalid.s: New test. + * testsuite/gas/aarch64/ls64.s: New test. + +2020-11-03 Christian Eggers + + * config/obj-elf (elf_frob_symbol): Fix symbol value calculation + for versioned symbol aliases. + +2020-10-30 H.J. Lu + + PR gas/26703 + * config/tc-i386.c (output_insn): Update for + GNU_PROPERTY_X86_ISA_1_BASELINE. + * testsuite/gas/i386/property-1.d: Updated. + * testsuite/gas/i386/property-2.d: Likewise. + * testsuite/gas/i386/property-3.d: Likewise. + * testsuite/gas/i386/property-4.d: Likewise. + * testsuite/gas/i386/property-5.d: Likewise. + * testsuite/gas/i386/property-6.d: Likewise. + * testsuite/gas/i386/property-11.d: Likewise. + * testsuite/gas/i386/property-12.d: Likewise. + * testsuite/gas/i386/x86-64-property-1.d: Likewise. + * testsuite/gas/i386/x86-64-property-2.d: Likewise. + * testsuite/gas/i386/x86-64-property-3.d: Likewise. + * testsuite/gas/i386/x86-64-property-4.d: Likewise. + * testsuite/gas/i386/x86-64-property-5.d: Likewise. + * testsuite/gas/i386/x86-64-property-6.d: Likewise. + * testsuite/gas/i386/x86-64-property-11.d: Likewise. + * testsuite/gas/i386/x86-64-property-12.d: Likewise. + +2020-10-30 Przemyslaw Wirkus + + * NEWS: Update docs. + * testsuite/gas/aarch64/system-5.d: Update test with WFIT insn. + * testsuite/gas/aarch64/system-5.s: Update test with WFIT insn. + +2020-10-28 Przemyslaw Wirkus + + * config/tc-aarch64.c (parse_operands): Check for C0-C15 value of DSB + immediate string operand. + * testsuite/gas/aarch64/system-4.d: Update test. + * testsuite/gas/aarch64/system-4.s: Update test. + +2020-10-27 Przemyslaw Wirkus + + * NEWS: Update docs. + * config/tc-aarch64.c (parse_csr_operand): New operand parser. + (parse_operands): Call to CSR operand parser. + * testsuite/gas/aarch64/csre_csr-invalid.d: New test. + * testsuite/gas/aarch64/csre_csr-invalid.l: New test. + * testsuite/gas/aarch64/csre_csr-invalid.s: New test. + * testsuite/gas/aarch64/csre_csr.d: New test. + * testsuite/gas/aarch64/csre_csr.s: New test. + +2020-10-27 Przemyslaw Wirkus + + * NEWS: Update docs. + * testsuite/gas/aarch64/system-5.d: New test. + * testsuite/gas/aarch64/system-5.s: New test. + +2020-10-26 H.J. Lu + + PR gas/26778 + * * dwarf2dbg.c (num_of_auto_assigned): New. + (allocate_filenum): Increment num_of_auto_assigned. + (dwarf2_directive_filename): Clear the slots auto-assigned + before the first .file directive was seen. + * testsuite/gas/i386/dwarf4-line-1.d: New file. + * testsuite/gas/i386/dwarf4-line-1.s: Likewise. + * testsuite/gas/i386/i386.exp: Run dwarf4-line-1. + +2020-10-26 Cooper Qu + + * config/tc-csky.c (dump_literals): Fix the literal dump + of big vector constant. + +2020-10-26 Cooper Qu + + * testsuite/gas/csky/enhance_dsp.s : Change plsl.u16 to plsl.16. + * testsuite/gas/csky/enhance_dsp.d : Change plsl.u16 to plsl.16. + +2020-10-26 Cooper Qu + + * config/tc-csky.c (md_begin): Add version flag in eflag. + +2020-10-26 Cooper Qu + + * config/tc-csky.c (get_operand_value): Add handler for + OPRND_TYPE_IMM5b_VSH and OPRND_TYPE_VREG_WITH_INDEX. + * testsuite/gas/csky/csky_vdsp.d : Fix the disassembling for + vector register. + +2020-10-26 Lili Cui + + * testsuite/gas/i386/avx-vnni.d: Change psuedo prefix from + {vex3} to {vex} + * testsuite/gas/i386/x86-64-avx-vnni.d: Likewise. + +2020-10-23 Przemyslaw Wirkus + + * NEWS: Docs update. + * config/tc-aarch64.c (parse_operands): Add + AARCH64_OPND_BARRIER_DSB_NXS handler. + (md_begin): Add content of aarch64_barrier_dsb_nxs_options to + aarch64_barrier_opt_hsh hash. + * testsuite/gas/aarch64/system-4-invalid.d: New test. + * testsuite/gas/aarch64/system-4-invalid.l: New test. + * testsuite/gas/aarch64/system-4-invalid.s: New test. + * testsuite/gas/aarch64/system-4.d: New test. + * testsuite/gas/aarch64/system-4.s: New test. + +2020-10-21 Srinath Parvathaneni + + PR target/26763 + * config/tc-arm.c (parse_address_main): Add new MVE addressing mode + check. + * testsuite/gas/arm/mve-vldr-vstr-bad.d: New test. + * testsuite/gas/arm/mve-vldr-vstr-bad.l: Likewise. + * testsuite/gas/arm/mve-vldr-vstr-bad.s: Likewise. + +2020-10-20 Dr. David Alan Gilbert + + * config/tc-arc.c (emit_insn0): Fix printf format. + +2020-10-20 Ganesh Gopalasubramanian + + * config/tc-i386.c (cpu_arch): Add CPU_ZNVER3_FLAGS flags. + (i386_align_code): Add PROCESSOR_ZNVER cases. + * doc/c-i386.texi: Add znver3, snp, invlpgb and tlbsync. + * gas/i386/i386.exp: Add new znver3 test cases. + * gas/i386/arch-14-znver3.d: New. + * gas/i386/arch-14.d: New. + * gas/i386/arch-14.s: New. + * gas/i386/invlpgb.d: New. + * gas/i386/invlpgb64.d: New. + * gas/i386/invlpgb.s: New. + * gas/i386/snp.d: New. + * gas/i386/snp64.d: New. + * gas/i386/snp.s: New. + * gas/i386/tlbsync.d: New. + * gas/i386/tlbsync.s: New. + * gas/i386/x86-64-arch-4-znver3.d: New. + * gas/i386/x86-64-arch-4.d: New. + * gas/i386/x86-64-arch-4.s: New. + +2020-10-17 H.J. Lu + + PR gas/25878 + PR gas/26740 + * testsuite/gas/i386/dwarf5-line-4.d: New file. + * testsuite/gas/i386/dwarf5-line-4.s: Likewise. + * testsuite/gas/i386/i386.exp: Run dwarf5-line-4. + +2020-10-17 H.J. Lu + + PR gas/25878 + PR gas/26740 + * testsuite/gas/i386/dwarf5-line-3.s: Replace dwarf5-line-2.S + with dwarf5-line-3.S. + * testsuite/gas/i386/dwarf5-line-3.d: Updated. + +2020-10-17 H.J. Lu + + PR gas/25878 + PR gas/26740 + * dwarf2dbg.c (allocate_filename_to_slot): Don't reuse the slot 1 + here. + (dwarf2_where): Restore as_where. + (dwarf2_directive_filename): Clear the slot 1 if it was assigned + to the input file. + * testsuite/gas/i386/dwarf5-line-2.d: New file. + * testsuite/gas/i386/dwarf5-line-2.s: Likewise. + * testsuite/gas/i386/dwarf5-line-3.d: Likewise. + * testsuite/gas/i386/dwarf5-line-3.s: Likewise. + * testsuite/gas/i386/i386.exp: Run dwarf5-line-2 and + dwarf5-line-3. + +gas/ChangeLog: + +2020-10-16 Przemyslaw Wirkus + + * NEWS: Docs update. + * config/tc-aarch64.c (armv8.7-a): New arch. + * doc/c-aarch64.texi (-march=armv8.7-a): Update docs. + +2020-10-16 Przemyslaw Wirkus + + * testsuite/gas/aarch64/sysreg-6.d: New test. + * testsuite/gas/aarch64/sysreg-6.s: New test. + +2020-10-16 H.J. Lu + + PR gas/25878 + PR gas/26740 + * dwarf2dbg.c (file_entry): Remove auto_assigned. + (assign_file_to_slot): Remove the auto_assign argument. + (allocate_filenum): Updated. + (allocate_filename_to_slot): Reuse the input file entry in the + file table. + (dwarf2_where): Replace as_where with as_where_physical. + * testsuite/gas/i386/dwarf5-line-1.d: New file. + * testsuite/gas/i386/dwarf5-line-1.s: Likewise. + * testsuite/gas/i386/i386.exp: Run dwarf5-line-1. + +2020-10-16 Lili Cui + + * config/tc-i386.c (cpu_flags_match): Move Pseudo Prefix check + to ... + (match_template): Here. + * testsuite/gas/i386/avx-vnni-inval.l: New file. + * testsuite/gas/i386/avx-vnni-inval.s: Likewise. + * testsuite/gas/i386/avx-vnni.d: Delete invalid {vex2} test. + * testsuite/gas/i386/avx-vnni.s: Likewise. + * testsuite/gas/i386/i386.exp: Add AVX VNNI invalid tests. + * testsuite/gas/i386/x86-64-avx-vnni-inval.l: New file. + * testsuite/gas/i386/x86-64-avx-vnni-inval.s: Likewise. + * testsuite/gas/i386/x86-64-avx-vnni.d: Delete invalid {vex2} test. + * testsuite/gas/i386/x86-64-avx-vnni.s: Likewise. + +2020-10-14 H.J. Lu + Lili Cui + + * NEWS: Add Intel AVX VNNI. + * config/tc-i386.c (cpu_arch): Add .avx_vnni and noavx_vnni. + (cpu_flags_match): Support CpuVEX_PREFIX. + * doc/c-i386.texi: Document .avx_vnni, noavx_vnni and how to + encode Intel VNNI instructions with VEX prefix. + * testsuite/gas/i386/avx-vnni.d: New file. + * testsuite/gas/i386/avx-vnni.s: Likewise. + * testsuite/gas/i386/x86-64-avx-vnni.d: Likewise. + * testsuite/gas/i386/x86-64-avx-vnni.s: Likewise. + * testsuite/gas/i386/i386.exp: Run AVX VNNI tests. + +2020-10-14 Lili Cui + + * NEWS: Add Intel HRESET. + * config/tc-i386.c (cpu_arch): Add .hreset. + (cpu_noarch): Likewise. + * doc/c-i386.texi: Document .hreset, nohreset. + * testsuite/gas/i386/i386.exp: Run HRESET tests. + * testsuite/gas/i386/hreset.d: New file. + * testsuite/gas/i386/x86-64-hreset.d: Likewise. + * testsuite/gas/i386/hreset.s: Likewise. + +2020-10-14 Lili Cui + + * NEWS: Add Intel UINTR. + * config/tc-i386.c (cpu_arch): Add .uintr. + (cpu_noarch): Likewise. + * doc/c-i386.texi: Document .uintr and nouintr. + * testsuite/gas/i386/i386.exp: Run UINTR tests. + * testsuite/gas/i386/x86-64-uintr.d: Likewise. + * testsuite/gas/i386/x86-64-uintr.s: Likewise. + +2020-10-14 H.J. Lu + + * config/tc-i386.c (load_insn_p): Check opcodeprefix == 0 for + base_opcode == 0xfc7. + (match_template): Likewise. + (process_suffix): Check opcodeprefix == PREFIX_0XF2 for CRC32. + (check_byte_reg): Likewise. + (output_insn): Don't add the 0xf3 prefix twice for PadLock + instructions. Don't add prefix from non-VEX/EVEX base_opcode. + +2020-10-13 H.J. Lu + + * config/tc-i386.c (build_vex_prefix): Replace vexopcode with + opcodeprefix. + (build_evex_prefix): Likewise. + (is_any_vex_encoding): Don't check vexopcode. + (output_insn): Handle opcodeprefix. + +2020-10-09 H.J. Lu + + PR gas/26703 + * config/tc-i386.c (xstate): Add xstate_mask. + (md_assemble): Check i.types[j], instead of i.tm.operand_types[j], + for xstate. Set xstate_mask, instead of xstate_zmm, for RegMask. + (output_insn): Update for GNU_PROPERTY_X86_ISA_1_V[234]. Update + xstate for mask register and VSIB. + * testsuite/gas/i386/i386.exp: Run more GNU_PROPERTY tests. + * testsuite/gas/i386/property-1.s: Updated to the current + GNU_PROPERTY_X86_ISA_1_USED value. + * testsuite/gas/i386/property-2.s: Only keep cmove. + * testsuite/gas/i386/property-3.s: Changed to addsubpd. + * testsuite/gas/i386/property-1.d: Updated. + * testsuite/gas/i386/property-2.d: Likewise. + * testsuite/gas/i386/property-3.d: Likewise. + * testsuite/gas/i386/property-4.d: Likewise. + * testsuite/gas/i386/property-5.d: Likewise. + * testsuite/gas/i386/property-6.d: Likewise. + * testsuite/gas/i386/x86-64-property-1.d: Likewise. + * testsuite/gas/i386/x86-64-property-2.d: Likewise. + * testsuite/gas/i386/x86-64-property-3.d: Likewise. + * testsuite/gas/i386/x86-64-property-4.d: Likewise. + * testsuite/gas/i386/x86-64-property-5.d: Likewise. + * testsuite/gas/i386/x86-64-property-6.d: Likewise. + * testsuite/gas/i386/x86-64-property-7.d: Likewise. + * testsuite/gas/i386/x86-64-property-8.d: Likewise. + * testsuite/gas/i386/x86-64-property-9.d: Likewise. + * testsuite/gas/i386/property-11.d: New file. + * testsuite/gas/i386/property-11.s: Likewise. + * testsuite/gas/i386/property-12.d: Likewise. + * testsuite/gas/i386/property-12.s: Likewise. + * testsuite/gas/i386/property-13.d: Likewise. + * testsuite/gas/i386/property-13.s: Likewise. + * testsuite/gas/i386/x86-64-property-11.d: Likewise. + * testsuite/gas/i386/x86-64-property-12.d: Likewise. + * testsuite/gas/i386/x86-64-property-13.d: Likewise. + * testsuite/gas/i386/x86-64-property-14.d: Likewise. + * testsuite/gas/i386/x86-64-property-14.s: Likewise. + +2020-10-08 Przemyslaw Wirkus + + * NEWS: Docs update. + * testsuite/gas/aarch64/brbe-invalid.d: New test. + * testsuite/gas/aarch64/brbe-invalid.l: New test. + * testsuite/gas/aarch64/brbe-invalid.s: New test. + * testsuite/gas/aarch64/brbe.d: New test. + * testsuite/gas/aarch64/brbe.s: New test. + +2020-10-08 Przemyslaw Wirkus + + * NEWS: Docs update. + * testsuite/gas/aarch64/csre-invalid.d: New test. + * testsuite/gas/aarch64/csre-invalid.l: New test. + * testsuite/gas/aarch64/csre-invalid.s: New test. + * testsuite/gas/aarch64/csre.d: New test. + * testsuite/gas/aarch64/csre.s: New test. + +2020-10-06 Alex Coplan + + PR 26699 + * config/tc-aarch64.c (asm_barrier_opt): Delete. + (parse_barrier): Fix bogus type punning. + * testsuite/gas/aarch64/system.d: Update disassembly. + * testsuite/gas/aarch64/system.s: Add isb sy test. + +2020-10-06 Sergey Belyashav + + PR 26692 + * config/tc-z80.c (md_begin): Ensure that xpressions are empty + before using them. + (unify_indexed): Likewise. + (z80_start_line_hook): Improve hash sign handling when SDCC + compatibility mode enabled. + (md_parse_exp_not_indexed): Improve indirect addressing + detection. + (md_pseudo_table): Accept hd64 as an alias of z810. + +2020-10-06 Alan Modra + + * testsuite/gas/elf/sh-link-zero.s: Don't start directives in + first column. Don't use numeric labels. + +2020-10-05 Przemyslaw Wirkus + + * config/tc-arm.c: Update Cortex-X1 feature flags. + +2020-10-05 Kamil Rytarowski + + * configure.tgt (aarch64*-*-netbsd*): Add target. + +2020-10-05 Samanta Navarro + + * doc/as.texi: Fix spelling mistakes. + * doc/c-wasm32.texi: Likewise. + +2020-10-05 T.K. Chia + + PR gas/26694 + * NEWS: Updated for i386 lcall and ljmp change. + * config/tc-i386.c (output_interseg_jump): Allow non-absolute + segment operand for immediate lcall and ljmp. + * testsuite/gas/i386/jump.d, + * testsuite/gas/i386/jump.s, + * testsuite/gas/i386/jump16.d, + * testsuite/gas/i386/jump16.e, + * testsuite/gas/i386/jump16.s: Add tests for non-absolute + segment operand for immediate ljmp. + +2020-10-05 H.J. Lu + + PR binutils/26704 + * testsuite/gas/i386/noreg64-data16.d: Expect sysretl instead of + sysret. + * testsuite/gas/i386/noreg64.d: Likewise. + * testsuite/gas/i386/x86-64-intel64.d: Likewise. + * testsuite/gas/i386/x86-64-opcode.d: Likewise. + +2020-10-05 H.J. Lu + + PR binutils/26705 + * testsuite/gas/i386/x86-64-suffix.s: Add "mov %rsp,%rbp" before + sysretq. + * testsuite/gas/i386/x86-64-suffix-intel.d: Updated. + * testsuite/gas/i386/x86-64-suffix.d: Likewise. + +2020-10-05 Nick Clifton + + PR 26253 + * config/obj-elf.c (obj_elf_section): Accept a numeric value for + the "o" section flag. Interpret it as a section index. Allow an + index of zero. + * doc/as.texi: Document the new behaviour. + * NEWS: Mention the new feature. Tidy entries. + * testsuite/gas/elf/sh-link-zero.s: New test. + * testsuite/gas/elf/sh-link-zero.d: New test driver. + * testsuite/gas/elf/elf.exp: Run the new test. + * testsuite/gas/elf/section21.l: Updated expected assembler + output. + +2020-10-05 Przemyslaw Wirkus + + * config/tc-aarch64.c: Update Cortex-X1 feature flags. + +2020-10-03 H.J. Lu + + PR gas/26685 + * config/tc-i386.c (process_suffix): Also check the register + operand for the address size prefix if the memory operand has + no real registers. + * testsuite/gas/i386/enqcmd-16bit.d: New file. + * testsuite/gas/i386/enqcmd-16bit.s: Likewise. + * testsuite/gas/i386/movdir-16bit.d: Likewise. + * testsuite/gas/i386/movdir-16bit.s: Likewise. + * testsuite/gas/i386/enqcmd.s: Add tests with symbol and DISP. + * testsuite/gas/i386/x86-64-enqcmd.s: Likewise. + * testsuite/gas/i386/x86-64-movdir.s: Likewise. + * testsuite/gas/i386/movdir.s: Add tests with symbol and DISP. + Remove the .code16 test. + * testsuite/gas/i386/i386.exp: Run movdir-16bit and enqcmd-16bit. + * testsuite/gas/i386/x86-64-enqcmd-intel.d: Updated. + * testsuite/gas/i386/x86-64-enqcmd.d: Likewise. + * testsuite/gas/i386/x86-64-movdir-intel.d: Likewise. + * testsuite/gas/i386/x86-64-movdir.d: Likewise. + * testsuite/gas/i386/enqcmd-intel.d: Likewise. + * testsuite/gas/i386/enqcmd.d: Likewise. + * testsuite/gas/i386/movdir-intel.d: Likewise. + * testsuite/gas/i386/movdir.d: Likewise. + * testsuite/gas/i386/x86-64-enqcmd-intel.d: Likewise. + * testsuite/gas/i386/x86-64-enqcmd.d: Likewise. + * testsuite/gas/i386/x86-64-movdir-intel.d: Likewise. + * testsuite/gas/i386/x86-64-movdir.d: Likewise. + +2020-10-02 Nick Clifton + + * testsuite/gas/arm/mve-vcvtne-it.d: Allow for padding inserted by + PE based targets. + +2020-10-01 Nick Clifton + + * config/obj-elf (elf_pseudo_table): Add attach_to_group. + (obj_elf_attach_to_group): New function. + * doc/as.texi: Document the new directive. + * NEWS: Mention the new feature. + * testsuite/gas/elf/attach-1.s: New test. + * testsuite/gas/elf/attach-1.d: New test driver. + * testsuite/gas/elf/attach-2.s: New test. + * testsuite/gas/elf/attach-2.d: New test driver. + * testsuite/gas/elf/attach-err.s: New test. + * testsuite/gas/elf/attach-err.d: New test driver. + * testsuite/gas/elf/attach-err.err: New test error output. + * testsuite/gas/elf/elf.exp: Run the new tests. + +2020-09-16 H.J. Lu + + PR gas/26685 + * config/tc-i386.c (process_suffix): Check the register operand + for the address size prefix if the memory operand is symbol(%rip). + * testsuite/gas/i386/x86-64-enqcmd.s: Add tests with RIP-relative + addressing. + * testsuite/gas/i386/x86-64-movdir.s: Likewise. + * testsuite/gas/i386/x86-64-enqcmd-intel.d: Updated. + * testsuite/gas/i386/x86-64-enqcmd.d: Likewise. + * testsuite/gas/i386/x86-64-movdir-intel.d: Likewise. + * testsuite/gas/i386/x86-64-movdir.d: Likewise. + +2020-09-30 Przemyslaw Wirkus + + * config/tc-aarch64.c: Add Cortex-A78 and Cortex-A78AE cores. + * doc/c-aarch64.texi: Update docs. + * NEWS: Update news. + +2020-09-30 Alex Coplan + + * NEWS: Mention recent Arm processor support. + +2020-09-30 Alex Coplan + + * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n2. + * doc/c-aarch64.texi: Document support for Neoverse N2. + +2020-09-30 Alan Modra + + * config/obj-elf.c (obj_elf_change_section): Rename variable to + avoid shadowing warning. + * symbols.c (symbol_entry_find): Init all symbol_flags fields. + +2020-09-30 Przemyslaw Wirkus + + * config/tc-arm.c: Add cortex-a78 and cortex-a78ae cores. + * doc/c-arm.texi: Update docs. + * NEWS: Update news. + * testsuite/gas/arm/cpu-cortex-a78.d: New test. + * testsuite/gas/arm/cpu-cortex-a78ae.d: New test. + +2020-09-29 Przemyslaw Wirkus + + * NEWS: TRBE, ETE, ETMv4 and Cortex-X1 news updates. + +2020-09-28 Przemyslaw Wirkus + + * config/tc-arm.c: (arm_cpus): Add Cortex-X1. + * doc/c-arm.texi: Document -mcpu=cortex-x1. + * testsuite/gas/arm/cpu-cortex-x1.d: New test. + +2020-09-28 Przemyslaw Wirkus + + * testsuite/gas/aarch64/etm-ro-invalid.d: New test. + * testsuite/gas/aarch64/etm-ro-invalid.l: New test. + * testsuite/gas/aarch64/etm-ro-invalid.s: New test. + * testsuite/gas/aarch64/etm-ro.s: New test. + * testsuite/gas/aarch64/etm-wo-invalid.d: New test. + * testsuite/gas/aarch64/etm-wo-invalid.l: New test. + * testsuite/gas/aarch64/etm-wo-invalid.s: New test. + * testsuite/gas/aarch64/etm-wo.s: New test. + * testsuite/gas/aarch64/etm.s: New test. + * testsuite/gas/aarch64/sysreg.d: system register s2_1_c0_c3_0 + disassembled now to trcstatr. + +2020-09-28 Przemyslaw Wirkus + + * config/tc-aarch64.c: (aarch64_cpus): Add Cortex-X1. + * doc/c-aarch64.texi: Document -mcpu=cortex-x1. + +2020-09-28 Przemyslaw Wirkus + + * testsuite/gas/aarch64/ete.d: New test. + * testsuite/gas/aarch64/ete.s: New test. + +2020-09-28 Przemyslaw Wirkus + + * testsuite/gas/aarch64/trbe-invalid.d: New test. + * testsuite/gas/aarch64/trbe-invalid.l: New test. + * testsuite/gas/aarch64/trbe-invalid.s: New test. + * testsuite/gas/aarch64/trbe.d: New test. + * testsuite/gas/aarch64/trbe.s: New test. + +2020-09-28 Alex Coplan + + * config/tc-arm.c (arm_cpus): Add FP16 to Neoverse V1. + +2020-09-28 Alex Coplan + + * config/tc-aarch64.c (aarch64_cpus): Group Neoverse cores together, + add missing F16 bit to Neoverse V1. + +2020-09-26 Alan Modra + + * config/tc-csky.c (parse_type_ctrlreg): Don't mask mach_flag + for csky_get_control_regno. + (csky_get_reg_val): Likewise when calling csky_get_general_regno. + +2020-09-24 Jim Wilson + + PR 26400 + * config/tc-riscv.c (append_insn): If in absolute section, emit + error before add_relaxed_insn call. + * testsuite/gas/riscv/absolute-sec.d: New. + * testsuite/gas/riscv/absolute-sec.l: New. + * testsuite/gas/riscv/absolute-sec.s: New. + +2020-09-23 Mark Wielaard + + * testsuite/gas/elf/dwarf-5-cu.d: Adjust expected output. + +2020-09-24 Alex Coplan + + * config/tc-arm.c (arm_cpus): Add Neoverse V1. + * doc/c-arm.texi: Document Neoverse V1 support. + +2020-09-24 Alex Coplan + + * config/tc-aarch64.c (aarch64_cpu_option_table): Add Neoverse V1. + * doc/c-aarch64.texi: Document Neoverse V1 support. + +2020-09-24 Alex Coplan + + * config/tc-arm.c (arm_cpus): Add Neoverse N2. + * doc/c-arm.texi: Document -mcpu=neoverse-n2. + +2020-09-24 Lili Cui + + * NEWS: Add TDX. + * config/tc-i386.c (cpu_arch): Add .tdx. + (cpu_noarch): Likewise. + * doc/c-i386.texi: Document tdx. + * testsuite/gas/i386/i386.exp: Run tdx tests. + * testsuite/gas/i386/tdx.d: Likewise. + * testsuite/gas/i386/tdx.s: Likewise. + * testsuite/gas/i386/x86-64-tdx.d: Likewise. + * testsuite/gas/i386/x86-64-tdx.s: Likewise. + +2020-09-17 Cooper Qu + + * config/tc-csky.c (parse_type_ctrlreg): Use function + csky_get_control_regno to operand. + (csky_get_reg_val): Likewise. + (is_reg_sp_with_bracket): Use function csky_get_reg_val + to parse operand. + (is_reg_sp): Refine. + (is_oimm_within_range): Fix, report error when operand + is not constant. + (parse_type_cpreg): Refine. + (parse_type_cpcreg): Refine. + (get_operand_value): Add handle of OPRND_TYPE_IMM5b_LS. + (md_assemble): Fix no error reporting somtimes when + operands number are not fit. + (csky_addc64): Refine. + (csky_subc64): Refine. + (csky_or64): Refine. + (v1_work_fpu_fo): Refine. + (v1_work_fpu_read): Refine. + (v1_work_fpu_writed): Refine. + (v1_work_fpu_readd): Refine. + (v2_work_addc): New function, strengthen the operands legality + check of addc. + * testsuite/gas/csky/all.d : Use register number format when + disassemble register name by default. + * testsuite/gas/csky/cskyv2_all.d : Likewise. + * testsuite/gas/csky/trust.d: Likewise. + * testsuite/gas/csky/cskyv2_ck860.d : Fix. + * testsuite/gas/csky/trust.s : Fix. + +2020-09-23 Lili Cui + + * NEWS: Add Key Locker. + * config/tc-i386.c (cpu_arch): Add .kl and .wide_kl. + (cpu_noarch): Likewise. + * doc/c-i386.texi: Document kl and wide_kl. + * testsuite/gas/i386/i386.exp: Run keylocker tests. + * testsuite/gas/i386/keylocker-intel.d: New test. + * testsuite/gas/i386/keylocker.d: Likewise. + * testsuite/gas/i386/keylocker.s: Likewise. + * testsuite/gas/i386/x86-64-keylocker-intel.d: Likewise. + * testsuite/gas/i386/x86-64-keylocker.d: Likewise. + * testsuite/gas/i386/x86-64-keylocker.s: Likewise. + * testsuite/gas/i386/x86-64-property-10.d: Likewise. + * testsuite/gas/i386/property-10.d: Likewise. + * testsuite/gas/i386/property-10.s: Likewise. + +2020-09-21 Alan Modra + + PR 26569 + * config/tc-riscv.c (append_insn): Don't tie off frags at CALL + relocs. + (riscv_call): Tie them off after the jalr. + (md_apply_fix): Zero fx_size of RELAX fixup. + +2020-09-018 David Faust + + * testsuite/gas/bpf/alu-xbpf.d: New file. + * testsuite/gas/bpf/alu-xbpf.s: Likewise. + * testsuite/gas/bpf/alu32-xbpf.d: Likewise. + * testsuite/gas/bpf/alu32-xbpf.d: Likewise. + * testuiste/gas/bpf/bpf.exp: Run new tests. + +2020-09-18 Tucker + + PR 26556 + * read.c (bss_alloc): Convert size parameter from octets to + bytes. + +2020-09-17 Alan Modra + + * testsuite/gas/i386/i386.exp: Return early if not x86. + +2020-09-16 Alan Modra + + * config/obj-elf.c (obj_elf_visibility, elf_frob_symbol): Adjust + elf_symbol_from invocation. + * config/tc-aarch64.c (s_variant_pcs): Likewise. + * config/tc-m68hc11.c (s_m68hc11_mark_symbol): Likewise. + * config/tc-ppc.c (ppc_elf_localentry, ppc_force_relocation), + (ppc_fix_adjustable): Likewise. + * config/tc-xgate.c (xgate_frob_symbol): Likewise. + +2020-09-15 H.J. Lu + + * testsuite/gas/cfi/reloc-pe-i386.d: Updated. + * testsuite/gas/i386/x86-64-w64-pcrel.d: Likewise. + +2020-09-15 Alan Modra + + PR 26610 + * config/tc-arm.c (move_or_literal_pool): Correct extraction of + bignum. Use unsigned "v" + (is_double_a_single): Make "v" and "mantissa" unsigned. Formatting. + (double_to_single): Likewise. + +2020-09-15 Nick Clifton + + * read.c (s_nop): Preserve the input_line_pointer around the call + to md_assemble. + * config/tc-s12z.c (md_assemble): Revert previous delta. + +2020-09-15 David Faust + + * config/tc-bpf.h (md_single_noop_insn): Use 'ja 0' for no-op. + +2020-09-14 Nick Clifton + + * read.c (s_nop): New function. Handles the .nop directive. + (potable): Add entry for "nop". + (s_nops): Code tidy. + * read.h (s_nop): Add prototype. + * config/tc-bpf.h (md_single_noop_insn): Define. + * config/tc-mmix.h (md_single_noop_insn): Define. + * config/tc-or1k.h (md_single_noop_insn): Define. + * config/tc-ia64.h (md_single_noop_insn): Define. + * config/tc-s12z.c (md_assemble): Preserve the input line pointer, + rather than corrupting it. + * write.c (relax_segment): Update error message regarding + non-absolute values passed to .fill and .nops. + * NEWS: Mention the new directive. + * doc/as.texi: Document the new directive. + * doc/internals.texi: Document the new internal macros used to + implement the new directive. + * testsuite/gas/all/nop.s: New test. + * testsuite/gas/all/nop.d: New test control file. + * testsuite/gas/all/gas.exp: Run the new test. + * testsuite/gas/elf/dwarf-5-nop-for-line-table.s: New test. + * testsuite/gas/elf/dwarf-5-nop-for-line-table.d: New test + control file. + * testsuite/gas/elf/elf.exp: Run the new test. + * testsuite/gas/i386/space1.l: Adjust expected output. + +2020-09-07 Mark Wielaard + + * as.texi (-g): Explicitly mention when .debug_info and .debug_line + are generated for the DWARF format. + (Loc): Add that it is an error to both use a .loc directive and + generate a .debug_line yourself. + * dwarf2dbg.c (dwarf2_any_loc_directive_seen): New static variable. + (dwarf2_directive_loc): Set dwarf2_any_loc_directive_seen to TRUE. + (dwarf2_finish): Check dwarf2_any_loc_directive_seen before emitting + an error. Only create .debug_line if it is empty (or doesn't exist). + * testsuite/gas/i386/i386.exp: Add dwarf2-line-{1,2,3,4} when testing + an elf target. + * testsuite/gas/i386/dwarf2-line-{1,2,3,4}.{s,d,l}: New test files. + +2020-09-10 Cooper Qu + + * config/tc-csky.c (md_begin): Enable extend lrw by default for + CK802, CK803 and CK860. + +2020-09-10 Cooper Qu + + * config/tc-csky.c (struct csky_cpu_info): Add new members + isa_flag, features and ver. + (struct csky_cpu_feature): New. + (struct csky_cpu_version): New. + (CSKY_FEATURE_MAX): Define. + (CSKY_CPU_REVERISON_MAX): Define. + (FEATURE_DSP_EXT, FEATURE_DSP, FEATURE_MMU, FEATURE_VDSP, + FEATURE_FLOAT, FEATURE_TRUST, FEATURE_JAVA, FEATURE_SHIELD): + Define, each standard one collection of instructions. + (CSKY_FEATURES_DEF_NULL, CSKY_FEATURES_DEF_e, + CSKY_FEATURES_DEF_t, CSKY_FEATURES_DEF_f, CSKY_FEATURES_DEF_v, + CSKY_FEATURES_DEF_ef, CSKY_FEATURES_DEF_jt, + CSKY_FEATURES_DEF_efht, CSKY_FEATURES_DEF_efv, + CSKY_FEATURES_DEF_eft, CSKY_FEATURES_DEF_d, + CSKY_FEATURES_DEF_df, CSKY_FEATURES_DEF_ft, + CSKY_FEATURES_DEF_tv, CSKY_FEATURES_DEF_fv, + CSKY_FEATURES_DEF_dft, CSKY_FEATURES_DEF_dfv, + CSKY_FEATURES_DEF_ftv, CSKY_FEATURES_DEF_eftv): Define, + the features combination used by cpu. + (CSKY_CPU_REVERISON_r0p0, CSKY_CPU_REVERISON_r1p0, + CSKY_CPU_REVERISON_r2p0, CSKY_CPU_REVERISON_r3p0, + CSKY_CPU_REVERISON_RESERVED, CSKY_CPU_REVERISON_R3): + Define, version information used by cpu. + (csky_cpus): Refine, and add CK804, CK805 and CK800. + (parse_cpu): Refine. + (parse_arch): Refine. + (md_show_usage): Refine. + (md_begin): Refine. + +2020-09-09 Alan Modra + + * config/tc-ppc.c (md_assemble): Emit prefix insn by parts when + valueT is smaller than 64 bits. + +2020-09-07 Cooper Qu + + * config/tc-csky.c (CSKYV2_ISA_DSP): CSKY_ISA_DSPE60. + (CSKY_ISA_860): Likewise. + +2020-09-07 Cooper Qu + + * config/tc-csky.c (float_abi): New. + (md_longopts): Add mfloat-abi. + (struct sky_option_value_table): New. + (csky_float_abis): New, the possible values for -mfloat-abi. + (parse_float_abi): New funtion. + (md_show_usage): Show help information for -mfloat-abi. + (set_csky_attribute): Store float-abi value. + +2020-09-07 Cooper Qu + + * config/tc-csky.c (float_work_fpuv3_fmovi): New function, + helper function to encode fpuv3 fmovi instructions. + (float_work_fpuv3_fstore): New function. + (struct literal): Add new member 'offset'. + (csky_cpus): New cpu CK860f. + (enter_literal): Return literal pool pointer instead of offset. + (parse_rt): Adjust the change of enter_literal. + (parse_rtf): Likewise. + (v1_work_lrw): Likewise. + (v1_work_jbsr): Likewise. + (v2_work_lrw): Likewise. + (v2_work_jbsr): Likewise. + (v2_work_jsri): Likewise. + (vdsp_work_vlrw): Likewise. + (is_freglist_legal): Add handler for FPUV3. + (parse_type_freg): Likewise. + (is_imm_within_range): Set e.X_add_number if it is a signed and + negtive number. + (get_operand_value): Add handler for OPRND_TYPE_IMM9b, + OPRND_TYPE_HFLOAT_FMOVI, OPRND_TYPE_SFLOAT_FMOVI + and OPRND_TYPE_DFLOAT_FMOVI. + (float_to_half): Convert float number to harf float. + * testsuite/gas/csky/case-fpuv3-ck860f/ : New folder containing + the test cases for FPUV3, they are divided by instruction + operands format and both have legal cases and illegal cases. + +2020-09-08 Jozef Lawrynowicz + Kuan-Lin Chen + + * config/tc-msp430.c (msp430_insert_uleb128_fixes): New. + (msp430_md_end): Call msp430_insert_uleb128_fixes. + +2020-09-08 Alex Coplan + + * config/tc-aarch64.c (aarch64_cpus): Add Cortex-R82. + * doc/c-aarch64.texi: Document -mcpu=cortex-r82. + +2020-09-08 Alex Coplan + + * config/tc-aarch64.c (parse_sys_reg): Also pass sysreg name to + validation function. + (parse_sys_ins_reg): Likewise. + (print_operands): Pass CPU features to aarch64_print_operand(). + * testsuite/gas/aarch64/v8-r-bad-sysregs.d: New test. + * testsuite/gas/aarch64/v8-r-bad-sysregs.l: Error output. + * testsuite/gas/aarch64/v8-r-bad-sysregs.s: Input. + * testsuite/gas/aarch64/v8-r-sysregs-need-arch.d: New test. + * testsuite/gas/aarch64/v8-r-sysregs-need-arch.l: Error output. + * testsuite/gas/aarch64/v8-r-sysregs.d: New test. + * testsuite/gas/aarch64/v8-r-sysregs.s: Input for previous two tests. + +2020-09-08 Alex Coplan + + * testsuite/gas/aarch64/dfb.d: New test. + * testsuite/gas/aarch64/dfb.s: Input. + +2020-09-08 Alex Coplan + + * config/tc-aarch64.c (aarch64_archs): Add armv8-r. + * doc/c-aarch64.texi: Document -march=armv8-r. + +2020-09-07 Mark Wielaard + + * dwarf2dbg.c (add_line_strp): New function. + (out_dir_and_file_list): Take line_seg and sizeof_offset as + arguments, Use DW_FORM_line_strp for dir and file. Call + add_line_strp and set symbol offset for DWARF2_LINE_VERSION 5. + (out_debug_line): Call out_dir_and_file_list with line_seg and + sizeof_offset. + * testsuite/gas/elf/dwarf-5-file0.d: Expect indirect line + strings. + +2020-09-07 Mark Wielaard + + * dwarf2dbg.c (DWARF2_RNGLISTS_VERSION): New constant. + (out_debug_ranges): Add ranges_sym argument and set it. + (out_debug_rnglists): New function. + (out_debug_info): Change ranges_seg argument to ranges_sym + and use it to set DW_AT_ranges value. + (dwarf2_finish): Remove ranges_seg, add ranges_sym. For + DWARF2_VERSION 5 call out_debug_rnglists. + +2020-09-07 Mark Wielaard + + * dwarf2dbg.c (dwarf2_directive_filename): Initialize with_md5 to + FALSE. + * testsuite/gas/elf/dwarf-5-file0.s: Add a random bignum. + +2020-09-01 Mark Wielaard + + * dwarf2dbg.c (out_debug_abbrev): Use DW_FORM_sec_offset for DWARF + version 4 or higher. + +2020-09-02 Alan Modra + + * expr.c (add_to_result, subtract_from_result): Use unsigned + addition and subtraction. + +2020-09-02 Alan Modra + + * config/tc-z80.c (is_overflow): Avoid too large shift. + +2020-09-02 Alan Modra + + * config/tc-sparc.c (in_signed_range): Use an unsigned type for + sign mask. + +2020-09-02 Alan Modra + + * config/tc-nios2.c (md_apply_fix): Avoid too large shift. + +2020-09-02 Alan Modra + + * config/tc-mips.c (load_register): Avoid too large shift. + +2020-09-02 Alan Modra + + * config/tc-d30v.c (parallel_ok): Use 1UL for left shift expression. + +2020-09-02 Alan Modra + + * config/rx-parse.y (rx_intop): Avoid too large shifts. + (rx_intop, rx_uintop, rx_disp3op, rx_disp5op, displacement), + (rtsd_immediate): Use correctly typed unsigned variables. + +2020-09-02 Alan Modra + + * config/obj-macho.c (obj_mach_o_zerofill): Correct type of + constant shifted left. + +2020-09-02 Alan Modra + + * config/bfin-lex.l: Use an unsigned type for "value". + +2020-09-02 Alan Modra + + * config/tc-pdp11.c (md_number_to_chars): Condition nbytes=8 code + on BFD64. + +2020-09-02 Cooper Qu + + * config/tc-csky.c (csky_cpus): Add ck803r3. + (CSKY_ISA_803R3): Define. + (CSKY_ISA_803R2): Refine, use CSKY_ISA_803R1. + +2020-09-02 Cooper Qu + + * testsuite/gas/csky/cskyv2_dsp.d : Fix Encode of mulsws. + +2020-09-02 Cooper Qu + + * config/tc-csky.c (struct literal): New member bignum. + (dump_literals): Handle big constant. + (enter_literal): Likewise. + (parse_type_freg): Handle vector register. + +2020-09-01 H.J. Lu + + * doc/as.texi: Document the .tls_common directive. + +2020-09-01 Alan Modra + + PR 26420 + PR 26421 + PR 26425 + PR 26427 + * config/tc-arm.c (struct arm_it): Make size, size_req, cond and + uncond_value unsigned. + (parse_vfp_reg_list): Make setmask unsigned, vpr_str_len size_t. + (parse_big_immediate): Cast generic_bignum elements to unsigned. + (encode_thumb32_immediate): Shift left 0xffU. + (double_to_single): Make sign unsigned. Tidy. + (move_or_literal_pool): Cast LITTLE_NUM elements to uint64_t or + valueT. + (vfp_or_neon_is_neon): Adjust inst.uncond_value expression. + (md_assemble): Likewise. + (handle_pred_state): Make cond unsigned. + (thumb32_negate_data_op): Make variables unsigned. + (md_apply_fix): Make value and newval unsigned, adjust uses. + +2020-08-31 Alan Modra + + PR 26510 + * config/tc-z8k.c (buffer): Use unsigned char. + (apply_fix): Use unsigned char* pointers. + (build_bytes): Likewise and mask nibbles when packing. + +2020-08-31 Alan Modra + + PR 26503 + * config/tc-v850.c (parse_register_list): Shift 1u left. + +2020-08-31 Alan Modra + + PR 26502 + * config/tc-tic6x.c (md_apply_fix): Use unsigned variables. + +2020-08-31 Alan Modra + + PR 26497 + * config/tc-sh.c (assemble_ppi): Use unsigned variables. + +2020-08-31 Alan Modra + + PR 26495 + * config/tc-score.c (s3_apply_fix): Use unsigned variables. + * config/tc-score7.c (s7_apply_fix): Likewise. + +2020-08-31 Alan Modra + + PR 26480 + * config/tc-nios2.c (nios2_parse_reglist): Shift 1UL left. + +2020-08-31 Alan Modra + + PR 26479 + * config/tc-nios2.c (md_chars_to_number): Cast buf[i] before shifting. + +2020-08-31 Alan Modra + + PR 26472 + PR 26473 + PR 26474 + * config/tc-mips.c (operand_reg_mask): Shift 1u left. + (load_register): Shift 0xffffU left. + +2020-08-31 Alan Modra + + PR 26471 + * config/tc-metag.c (md_chars_to_number): Make retval unsigned. + +2020-08-31 Alan Modra + + PR 26468 + * config/tc-mep.c (md_convert_frag): Use uint32_t for addend and + other variables. + +2020-08-31 Alan Modra + + PR 26493 + * config/tc-riscv.c (riscv_ip): Cast X_add_number passed to + VALID_* macros to unsigned. + +2020-08-31 Alan Modra + + * config/tc-crx.c: Formatting. + (CRX_PRINT): Wrap params in parentheses. Remove parens from uses + throughout file. + (reset_vars, get_register, get_copregister, get_optype, get_opbits), + (get_opflags, get_number_of_operands, parse_operand, gettrap), + (handle_LoadStor, getconstant, check_range, getreg_image), + (parse_operands, parse_insn, print_operand, print_constant), + (exponent2scale, mask_reg, process_label_constant, set_operand), + (assemble_insn, print_insn): Delete unnecessary forward declaration. + (print_insn): Make static. + (print_constant): Make "constant" unsigned. + (assemble_insn): Tidy REVERSE_MATCH index calc. + * expr.c (generic_bignum_to_int32): Cast elements to valueT. + +2020-08-31 Alan Modra + + PR 26509 + * config/tc-z80.c (is_overflow): Use 1UL in mask shift expression. + +2020-08-30 Alan Modra + + * config/tc-tic4x.c (tic4x_gen_to_words): Rewrite mantissa + overflow test without UB. Avoid other UB shifts by making them + unsigned. + +2020-08-31 Cooper Qu + + * config/tc-csky.c (csky_error_state): New member 'arg_int'. + (SET_ERROR_NUMBER): Rename to SET_ERROR_STRING. + (SET_ERROR_INTEGER): New. + (err_formats): Add error format for ERROR_FREG_OVER_RANGE and + ERROR_VREG_OVER_RANGE. + (csky_show_error): Pass an integer argument for some error + numbers. + (parse_exp): Call SET_ERROR_STRING instead of SET_ERROR_NUMBER. + (parse_rt): Likewise. + (parse_type_ctrlreg): Likewise. + (csky_get_reg_val): Likewise. + (is_reglist_legal): Likewise. + (is_freglist_legal): Likewise. + (is_reglist_dash_comma_legal): Likewise. + (is_reg_lshift_illegal): Likewise. + (is_psr_bit): Likewise. + (parse_type_cpreg): Likewise. + (parse_type_cpcreg): Likewise. + (parse_type_areg): Likewise. + (parse_type_freg): Likewise. + (parse_ldst_imm): Likewise and call SET_ERROR_INTEGER. + (get_operand_value): Likewise. + (parse_operands_op): Likewise and call is_imm_within_range, + is_imm_within_range_ext and is_oimm_within_range. + (md_assemble): Likewise. + (is_imm_within_range): New. + (is_imm_within_range_ext): Rename from is_imm_over_range. + (is_oimm_within_range): Rename from is_oimm_over_range. + (v2_work_add_sub): Call SET_ERROR_INTEGER. + (csky_rolc): call is_imm_within_range instead of + is_imm_over_range. + +2020-08-31 Cooper Qu + + * config/tc-csky.c (md_begin): Add warning when -mdsp and + -mcpu=ck803ern are both added. + (parse_ldst_imm): Fix error message. + +2020-08-30 Alan Modra + + * testsuite/gas/cr16/cbitb_test.d: Update expected output. + * testsuite/gas/cr16/cbitw_test.d: Likewise. + * testsuite/gas/cr16/sbitb_test.d: Likewise. + * testsuite/gas/cr16/sbitw_test.d: Likewise. + * testsuite/gas/cr16/storb_test.d: Likewise. + * testsuite/gas/cr16/storw_test.d: Likewise. + * testsuite/gas/cr16/tbitb_test.d: Likewise. + * testsuite/gas/cr16/tbitw_test.d: Likewise. + +2020-08-30 Alan Modra + + PR 26437 + PR 26438 + * config/tc-cr16.c: Include limits.h, formatting. + (CR16_PRINT): Wrap params in parentheses. Remove parens from uses + throughout file. + (getconstant): Handle zero nbits. + (print_operand): Use unsigned variables. Simplify handling of + index regs. + (check_range): Use int32_t variables. Correct range checks. + +2020-08-29 Alan Modra + + PR 26481 + * config/tc-pj.c (md_assemble): Don't loop past end of + opcode->arg array. + +2020-08-28 Alan Modra + + PR 26460 + * config/tc-ia64.c (parse_operands): Don't access past end of + idesc->operands. + +2020-08-26 Mark Wielaard + + * as.c (parse_args): Handle bad -gdwarf options. + +2020-08-28 Cooper Qu + + * config/tc-csky.c (md_begin): Set attributes. + (isa_flag): Change type to unsigned 64 bits. + (struct csky_cpu_info): Likewise. + (struct csky_macro_info): Likewise. + (set_csky_attribute): New. + * testsuite/gas/csky/802j.d: Ignore .csky.attributes section. + * testsuite/gas/csky/all.d: Likewise. + * testsuite/gas/csky/bsr1.d: Likewise. + * testsuite/gas/csky/csky_vdsp.d: Likewise. + * testsuite/gas/csky/cskyv2_all.d: Likewise. + * testsuite/gas/csky/cskyv2_ck803r2.d: Likewise. + * testsuite/gas/csky/cskyv2_ck860.d: Likewise. + * testsuite/gas/csky/cskyv2_dsp.d: Likewise. + * testsuite/gas/csky/cskyv2_elrw.d: Likewise. + * testsuite/gas/csky/cskyv2_float.d: Likewise. + * testsuite/gas/csky/enhance_dsp.d: Likewise. + * testsuite/gas/csky/java.d: Likewise. + * testsuite/gas/csky/v1_float.d: Likewise. + * testsuite/gas/csky/v2_float_part1.d: Likewise. + * testsuite/gas/csky/v2_float_part2.d: Likewise. + * testsuite/gas/csky/v2_tls_gd.d: Likewise. + * testsuite/gas/csky/v2_tls_ie.d: Likewise. + * testsuite/gas/csky/v2_tls_ld.d: Likewise. + * testsuite/gas/csky/v2_tls_le.d: Likewise. + * testsuite/gas/elf/elf.exp: Add handler for CSKY. + * testsuite/gas/elf/section2.e-csky: New. + +2020-08-27 Alan Modra + + PR 26467 + * cgen.c (weak_operand_overflow_check): Handle opmask for + operand length zero. Use 1UL constant. + +2020-08-26 Alan Modra + + PR 26508 + * config/tc-xtensa.c (xg_get_trampoline_chain): Return early + when n_entries is zero. + +2020-08-26 Alan Modra + + PR 26448 + * symbols.c: Include limits.h. + (resolve_symbol_value ): Do an + unsigned shift. Warn if shift count larger than valueT size. + +2020-08-26 Alan Modra + + PR 26447 + * expr.c (expr ): Do an unsigned shift. + +2020-08-25 Alan Modra + +2020-08-26 David Faust + + * config/tc-bpf.c: Add option -mxbpf to select xbpf isa. + * testsuite/gas/bpf/indcall-1.d: New file. + * testsuite/gas/bpf/indcall-1.s: Likewise. + * testsuite/gas/bpf/indcall-bad-1.l: Likewise. + * testsuite/gas/bpf/indcall-bad-1.s: Likewise. + * testsuite/gas/bpf/bpf.exp: Run new tests. + +2020-08-25 Alan Modra + + PR 26501 + * config/tc-tic54x.c (tic54x_undefined_symbol): Properly treat + misc_symbol_hash entries without values. + +2020-08-25 Alan Modra + + PR 26500 + * config/tc-tic4x.c (tic4x_inst_make): Don't die on terminating + insn with name = "". + +2020-08-25 Alan Modra + + PR 26441 + * config/tc-cr16.c (get_b_cc): Return NULL early if op isn't + two or three chars, and don't bother copying. + +2020-08-25 Alan Modra + + PR 26426 + * config/tc-arm.c (do_neon_mvn, do_neon_swp): Bail out on + NS_NULL shape. + +2020-08-25 Alan Modra + + PR 26410 + * symbols.c (dollar_label_count, dollar_label_max): Make size_t. + (dollar_label_clear): Don't call memset with NULL pointer. + +2020-08-25 Alan Modra + + * config/tc-arc.c (declare_register_set): Avoid false positive + format-overflow warning. + * config/tc-epiphany.c (md_assemble): Likewise. + * config/tc-mips.c (md_begin): Likewise. + * config/tc-mmix.c (mmix_md_begin): Likewise. + * config/tc-nds32.c (nds32_elf_append_relax_relocs): Avoid false + positive "may be used uninitialized" warning. + +2020-08-24 Cooper Qu + + * config/tc-csky.c (csky_archs): Add item for CK860, + change ck810 and ck807's arch_flag. + (csky_cpus): Add item for CK860. + (md_begin): Enable DSP for CK810 and CK807 by default. + (md_apply_fix): Fix CKCORE_TLS_IE32 relocation failure. + * testsuite/gas/csky/cskyv2_all.d: Change 'sync 0' to 'sync'. + * testsuite/gas/csky/cskyv2_all.s: Likewise. + * testsuite/gas/csky/cskyv2_ck860.d: New. + * testsuite/gas/csky/cskyv2_ck860.s: New. + * testsuite/gas/csky/enhance_dsp.d: Change plsli.u16 to plsli.16. + * testsuite/gas/csky/enhance_dsp.s: Likewise. + +2020-08-24 Alan Modra + + * config/tc-tic54x.c (stag_add_field_symbols): Don't free "name" + in case where it isn't copied. + * config/tc-tic54x.h (LOCAL_LABELS_FB): Undef. + * testsuite/gas/tic54x/field.d: Dump section contents and symbols + rather than disassembling. + * testsuite/gas/tic54x/set.d: Adjust for newer disassembly. + +2020-08-24 Alan Modra + + * config/tc-aarch64.c (md_begin): Don't bother checking for + out of memory failure from str_htab_create. + * config/tc-arc.c (arc_insert_opcode, md_begin): Likewise. + (arc_extcorereg, arc_stralloc): Likewise. + * config/tc-arm.c (md_begin): Likewise. + * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise. + * config/tc-cris.c (md_begin): Likewise. + * config/tc-crx.c (md_begin): Likewise. + * config/tc-pdp11.c (md_begin): Likewise. + * config/tc-score.c (s3_build_reg_hsh, s3_begin): Likewise. + * config/tc-score7.c (s7_build_reg_hsh, s7_begin): Likewise. + +2020-08-24 Alan Modra + + * config/tc-arm.c (move_or_literal_pool): Avoid false positive + "may be used uninitialised". + (opcode_lookup): Likewise. + +2020-08-24 Alan Modra + + PR 26526 + * symbols.c (local_symbol_convert): Clear out xtra. + +2020-08-21 Cooper Qu + + * config/tc-csky.c (CSKY_ISA_803R2): New. + (csky_archs): Add ck803r2 series. + (md_begin): Fix warning about -medsp. + (csky_get_freg_val): Support lowercase of fpu register name. + * testsuite/gas/csky/cskyv2_ck803r2.s: New file. + * testsuite/gas/csky/cskyv2_ck803r2.d: New file. + +2020-08-23 Alan Modra + + PR 26513 + * hash.h (htab_insert): Update prototype and comment. + (struct string_tuple): Make "value" a const void*. + (string_tuple_alloc): Likewise. + (str_hash_find, str_hash_find_n): Cast returned value. + (str_hash_insert): Add "replace" parameter, and return slot pointer. + Free alloc'd element when not inserted. + * hash.c (htab_insert): Likewise. Return slot when element exists, + otherwise return NULL. + * read.c (pop_insert): Insert into hash table without first searching. + * config/tc-avr.c (md_begin): Likewise. + * config/tc-msp430.c (md_begin): Likewise. + * config/tc-nds32.c (nds32_init_nds32_pseudo_opcodes): Likewise. + * config/tc-v850.c (md_begin): Likewise. + * macro.c (do_formals, define_macro, macro_expand_body): Likewise. + (delete_macro): Delete from hash table. + * config/tc-tic54x.c (subsym_create_or_replace): Correct logic. + + * symbols.c (local_symbol_make, symbol_table_insert): Allow + replacement of hash table entries. + * config/obj-coff-seh.c (seh_hash_insert): Likewise. + * config/obj-coff.c (tag_insert): Likewise. + * config/tc-iq2000.c (iq2000_add_macro): Likewise. + * config/tc-m68k.c (md_begin): Likewise for aliases. + * config/tc-tic4x.c (tic4x_asg): Likewise. + * config/tc-tic6x.c (md_begin): Likewise. + + * dw2gencfi.c (dwcfi_hash_find_or_make): Disallow replacement of + hash table entries. + * ecoff.c (add_string, get_tag): Likewise. + * macro.c (expand_irp): Likewise. + * config/obj-elf.c (build_additional_section_info): Likewise. + * config/tc-aarch64.c (insert_reg_alias): Likewise. + (checked_hash_insert): Likewise. + * config/tc-alpha.c (get_alpha_reloc_tag, md_begin): Likewise. + * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise. + (declare_addrtype, md_begin, arc_extcorereg): Likewise. + * config/tc-arm.c (insert_reg_alias): Likewise. + (arm_tc_equal_in_insn, md_begin): Likewise. + * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise. + * config/tc-cris.c (md_begin): Likewise. + * config/tc-crx.c (md_begin): Likewise. + * config/tc-csky.c (md_begin): Likewise. + * config/tc-d10v.c (md_begin): Likewise. + * config/tc-dlx.c (md_begin): Likewise. + * config/tc-ft32.c (md_begin): Likewise. + * config/tc-h8300.c (md_begin): Likewise. + * config/tc-hppa.c (md_begin): Likewise. + * config/tc-i386.c (md_begin): Likewise. + * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise. + (md_begin, dot_alias): Likewise. + * config/tc-m68hc11.c (md_begin): Likewise. + * config/tc-m68k.c (md_begin): Likewise. + * config/tc-mcore.c (md_begin): Likewise. + * config/tc-microblaze.c (md_begin): Likewise. + * config/tc-mips.c (md_begin): Likewise. + * config/tc-mmix.c (md_begin): Likewise. + * config/tc-mn10200.c (md_begin): Likewise. + * config/tc-mn10300.c (md_begin): Likewise. + * config/tc-moxie.c (md_begin): Likewise. + * config/tc-nds32.c (nds32_relax_hint, md_begin): Likewise. + * config/tc-nios2.c (md_begin): Likewise. + * config/tc-ns32k.c (md_begin): Likewise. + * config/tc-pdp11.c (md_begin): Likewise. + * config/tc-pj.c (fake_opcode, md_begin): Likewise. + * config/tc-ppc.c (ppc_setup_opcodes): Likewise. + * config/tc-pru.c (md_begin): Likewise. + * config/tc-riscv.c (init_ext_version_hash): Likewise. + (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise. + (riscv_init_csr_hash): Likewise. + * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise. + * config/tc-score.c (s3_insert_reg): Likewise. + (s3_build_score_ops_hsh, s3_build_dependency_insn_hsh): Likewise. + * config/tc-score7.c (s7_build_score_ops_hsh): Likewise. + (s7_build_dependency_insn_hsh, s7_insert_reg): Likewise. + * config/tc-sh.c (md_begin): Likewise. + * config/tc-sparc.c (md_begin): Likewise. + * config/tc-spu.c (md_begin): Likewise. + * config/tc-tic30.c (md_begin): Likewise. + * config/tc-tic4x.c (tic4x_inst_insert): Likewise. + * config/tc-tic54x.c (stag_add_field_symbols, md_begin): Likewise. + (tic54x_endstruct, tic54x_var, tic54x_macro_info): Likewise. + (subsym_substitute): Likewise. + * config/tc-tilegx.c (md_begin): Likewise. + * config/tc-tilepro.c (md_begin): Likewise. + * config/tc-vax.c (vip_begin): Likewise. + * config/tc-wasm32.c (md_begin): Likewise. + * config/tc-xgate.c (md_begin): Likewise. + * config/tc-z8k.c (md_begin): Likewise. + * testsuite/gas/ppc/dcbt.d, + * testsuite/gas/ppc/dcbt.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + + * ecoff.c (add_string): Report fatal error on duplicates. + * config/tc-alpha.c (md_begin): Likewise. + * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise. + (declare_addrtype, md_begin, arc_extcorereg): Likewise. + * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise. + * config/tc-cris.c (md_begin): Likewise. + * config/tc-crx.c (md_begin): Likewise. + * config/tc-dlx.c (md_begin): Likewise. + * config/tc-hppa.c (md_begin): Likewise. + * config/tc-i386.c (md_begin): Likewise. + * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise. + (md_begin): Likewise. + * config/tc-m68k.c (md_begin): Likewise. + * config/tc-mips.c (md_begin): Likewise. + * config/tc-nios2.c (md_begin): Likewise. + * config/tc-ns32k.c (md_begin): Likewise. + * config/tc-ppc.c (ppc_setup_opcodes): Likewise. + * config/tc-pru.c (md_begin): Likewise. + * config/tc-riscv.c (init_ext_version_hash): Likewise. + (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise. + * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise. + * config/tc-sparc.c (md_begin): Likewise. + * config/tc-tic30.c (md_begin): Likewise. + * config/tc-tic4x.c (tic4x_inst_insert): Likewise. + * config/tc-tilegx.c (md_begin): Likewise. + * config/tc-tilepro.c (md_begin): Likewise. + * config/tc-vax.c (vip_begin): Likewise. + + * config/tc-alpha.c, + * config/tc-arm.c, + * config/tc-avr.c, + * config/tc-cr16.c, + * config/tc-csky.c, + * config/tc-i386.c, + * config/tc-m68hc11.c, + * config/tc-m68k.c, + * config/tc-microblaze.c, + * config/tc-ns32k.c, + * config/tc-pj.c, + * config/tc-ppc.c, + * config/tc-score.c, + * config/tc-score7.c, + * config/tc-tic4x.c, + * config/tc-tic54x.c, + * config/tc-tilegx.c, + * config/tc-tilepro.c, + * config/tc-xgate.c: Formatting. + +2020-08-21 Alan Modra + + * symbols.c (struct local_symbol): Add "hash" entry. Reorder fields. + Delete union. Adjust code throughout file. + (struct symbol): Add "hash", "name" and "x" entries. Reorder fields. + Split off some to.. + (struct xsymbol): ..this. New struct. Adjust code throughout file + accessing these fields. + (struct symbol_entry): Delete. + (union symbol_entry): New. + (hash_symbol_entry): Adjust for symbol_entry_t change. + (symbol_entry_find): Likewise. + (eq_symbol_entry): Compare hash values too. + (symbol_entry_alloc): Delete. + (local_symbol_converted_p, local_symbol_mark_converted): Delete. + (local_symbol_get_real_symbol, local_symbol_set_real_symbol): Delete. + (local_hash): Delete. + (abs_symbol_x, dot_symbol_x): New static var. + (symbol_init): New function. + (symbol_create): Rewrite. + (LOCAL_SYMBOL_CHECK): Delete. Replace uses throughout with simple + test of flags.local_symbol. + (local_symbol_make): Adjust for struct local_symbol changes. + (local_symbol_convert): Rewrite. Adjust all callers. + (symbol_table_insert): Simplify. + (symbol_clone): Comment on local sym cloning. Handle split symbol + struct. + (get_real_sym): Delete. Remove all uses. + (symbol_find_exact_noref): Simplify. + (resolve_local_symbol): Don't resolve non-locals. + (S_SET_SEGMENT): Don't special case reg_section. + (S_SET_NAME): Set both name and bsym->name. + (symbol_mark_resolved, symbol_resolved_p): Simplify. + (symbol_symbolS): Update comment. + (symbol_begin): Don't create local_hash. Adjust abs_symbol setup. + (dot_symbol_init): Adjust dot_symbol setup. + (symbol_print_statistics): Delete local_hash stats. + +2020-08-21 Alan Modra + + * symbols.c (struct symbol_flags): Rename sy_volatile to volatil, + and remove sy_ from other field names. Update throughout. + (struct symbol): Remove sy_ from field names. Delete unused + TARGET_SYMBOL_FIELDS. Update throughout file. Move after.. + (struct local_symbol): ..here. Remove lsy_ from field names. + Delete unused TC_LOCAL_SYMFIELD_TYPE. Update throughout file. + (local_symbol_resolved_p, local_symbol_mark_resolved): Delete. + Expand uses throughout file. + (local_symbol_get_frag, local_symbol_set_frag): Likewise. + (symbol_new): Move symbol_table_frozen test to.. + (symbol_append): ..here, and.. + (symbol_insert): ..here. + (resolve_symbol_value, symbol_relc_make_expr): White space fixes. + (HANDLE_XADD_OPT1, HANDLE_XADD_OPT2): Likewise. + * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Update. + +2020-08-21 Alan Modra + + * symbols.h (symbol_new, symbol_create, local_symbol_make), + (symbol_temp_new): Arrange params as section, frag, offset. + * symbols.c: Adjust to suit. + * as.c: Likewise. + * cgen.c: Likewise. + * dwarf2dbg.c: Likewise. + * ecoff.c: Likewise. + * expr.c: Likewise. + * itbl-ops.c: Likewise. + * read.c: Likewise. + * stabs.c: Likewise. + * subsegs.c: Likewise. + * config/obj-coff.c: Likewise. + * config/obj-elf.c: Likewise. + * config/obj-macho.c: Likewise. + * config/tc-aarch64.c: Likewise. + * config/tc-alpha.c: Likewise. + * config/tc-arc.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-avr.c: Likewise. + * config/tc-cr16.c: Likewise. + * config/tc-cris.c: Likewise. + * config/tc-csky.c: Likewise. + * config/tc-dlx.c: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-i386.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-m32r.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-mmix.c: Likewise. + * config/tc-mn10200.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-nds32.c: Likewise. + * config/tc-nios2.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-riscv.c: Likewise. + * config/tc-s390.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-tic4x.c: Likewise. + * config/tc-tic54x.c: Likewise. + * config/tc-xtensa.c: Likewise. + +2020-08-21 Cooper Qu + + * config/tc-csky.c (csky_insn_info): Add member last_isize. + (md_assemble): Assign value to csky_insn.last_isize. + * testsuite/gas/csky/enhance_dsp.d: Test bloop's two operands form. + * testsuite/gas/csky/enhance_dsp.s: Likewise. + +2020-08-20 Martin Liska + + * NEWS: Mention --reduce-memory-overheads and --hash-size arguments + options. + * as.c: Remove the options from help. + * doc/as.texi: Remove options. + * doc/internals.texi: Remove hash from documentation. + * hash.c (struct hash_entry): Remove. + (struct hash_control): Likewise. + (set_gas_hash_table_size): Likewise. + (hash_new_sized): Likewise. + (hash_new): Likewise. + (hash_die): Likewise. + (hash_lookup): Likewise. + (hash_insert): Likewise. + (hash_jam): Likewise. + (hash_replace): Likewise. + (hash_find): Likewise. + (hash_find_n): Likewise. + (hash_delete): Likewise. + (hash_traverse): Likewise. + (hash_print_statistics): Likewise. + (TABLES): Likewise. + (STATBUFSIZE): Likewise. + (main): Likewise. + (what): Likewise. + (destroy): Likewise. + (applicatee): Likewise. + (whattable): Likewise. + * hash.h (struct hash_control): Likewise. + (set_gas_hash_table_size): Likewise. + (hash_new): Likewise. + (hash_new_sized): Likewise. + (hash_die): Likewise. + (hash_insert): Likewise. + (hash_jam): Likewise. + (hash_replace): Likewise. + (hash_find): Likewise. + (hash_find_n): Likewise. + (hash_delete): Likewise. + (hash_traverse): Likewise. + (hash_print_statistics): Likewise. + +2020-08-20 Martin Liska + + * config/obj-coff-seh.c (seh_hash_insert): Port to use new + str_htab type. + (seh_hash_find): Likewise. + (seh_hash_find_or_make): Likewise. + * config/obj-coff.c (tag_init): Likewise. + (tag_insert): Likewise. + (tag_find): Likewise. + * config/obj-elf.c (struct group_list): Likewise. + (build_additional_section_info): Likewise. + (free_section_idx): Likewise. + (elf_adjust_symtab): Likewise. + (elf_frob_file_after_relocs): Likewise. + * config/tc-aarch64.c (INSN_SIZE): Likewise. + (parse_reg): Likewise. + (insert_reg_alias): Likewise. + (create_register_alias): Likewise. + (s_unreq): Likewise. + (parse_shift): Likewise. + (parse_pldop): Likewise. + (parse_barrier): Likewise. + (parse_barrier_psb): Likewise. + (parse_bti_operand): Likewise. + (parse_sys_reg): Likewise. + (parse_sys_ins_reg): Likewise. + (lookup_mnemonic): Likewise. + (opcode_lookup): Likewise. + (parse_operands): Likewise. + (checked_hash_insert): Likewise. + (sysreg_hash_insert): Likewise. + (fill_instruction_hash_table): Likewise. + (md_begin): Likewise. + * config/tc-alpha.c (struct alpha_reloc_tag): Likewise. + (get_alpha_reloc_tag): Likewise. + (assemble_tokens_to_insn): Likewise. + (assemble_tokens): Likewise. + (md_begin): Likewise. + * config/tc-arc.c (arc_find_opcode): Likewise. + (arc_insert_opcode): Likewise. + (find_opcode_match): Likewise. + (declare_register): Likewise. + (declare_addrtype): Likewise. + (md_begin): Likewise. + (arc_parse_name): Likewise. + (tc_arc_regname_to_dw2regnum): Likewise. + (arc_extcorereg): Likewise. + * config/tc-arm.c (MVE_BAD_QREG): Likewise. + (arm_reg_parse_multi): Likewise. + (parse_reloc): Likewise. + (insert_reg_alias): Likewise. + (create_register_alias): Likewise. + (s_unreq): Likewise. + (parse_shift): Likewise. + (parse_psr): Likewise. + (parse_cond): Likewise. + (parse_barrier): Likewise. + (do_vfp_nsyn_opcode): Likewise. + (opcode_lookup): Likewise. + (arm_tc_equal_in_insn): Likewise. + (md_begin): Likewise. + * config/tc-avr.c (md_begin): Likewise. + (avr_ldi_expression): Likewise. + (md_assemble): Likewise. + (avr_update_gccisr): Likewise. + (avr_emit_insn): Likewise. + * config/tc-cr16.c (get_register): Likewise. + (get_register_pair): Likewise. + (get_index_register): Likewise. + (get_index_register_pair): Likewise. + (get_pregister): Likewise. + (get_pregisterp): Likewise. + (initialise_reg_hash_table): Likewise. + (md_begin): Likewise. + (cr16_assemble): Likewise. + (md_assemble): Likewise. + * config/tc-cris.c (cris_insn_first_word_frag): Likewise. + (md_begin): Likewise. + (cris_process_instruction): Likewise. + * config/tc-crx.c (get_register): Likewise. + (get_copregister): Likewise. + (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-csky.c (md_begin): Likewise. + (parse_opcode): Likewise. + (get_operand_value): Likewise. + (v1_work_jbsr): Likewise. + (v2_work_rotlc): Likewise. + (v2_work_bgeni): Likewise. + (v2_work_not): Likewise. + * config/tc-d10v.c (sizeof): Likewise. + (md_begin): Likewise. + (do_assemble): Likewise. + (md_apply_fix): Likewise. + * config/tc-d30v.c (sizeof): Likewise. + (md_begin): Likewise. + (do_assemble): Likewise. + * config/tc-dlx.c (RELOC_DLX_VTENTRY): Likewise. + (md_begin): Likewise. + (machine_ip): Likewise. + * config/tc-ft32.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-h8300.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-hppa.c (pa_ip): Likewise. + (md_begin): Likewise. + * config/tc-i386.c (md_begin): Likewise. + (i386_print_statistics): Likewise. + (parse_insn): Likewise. + (process_operands): Likewise. + (i386_index_check): Likewise. + (parse_real_register): Likewise. + * config/tc-ia64.c (dot_rot): Likewise. + (dot_entry): Likewise. + (declare_register): Likewise. + (md_begin): Likewise. + (ia64_parse_name): Likewise. + (md_assemble): Likewise. + (dot_alias): Likewise. + (do_alias): Likewise. + (ia64_adjust_symtab): Likewise. + (do_secalias): Likewise. + (ia64_frob_file): Likewise. + * config/tc-m68hc11.c (m68hc11_print_statistics): Likewise. + (md_begin): Likewise. + (print_insn_format): Likewise. + (md_assemble): Likewise. + * config/tc-m68k.c (tc_gen_reloc): Likewise. + (m68k_ip): Likewise. + (md_begin): Likewise. + * config/tc-mcore.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-microblaze.c (md_begin): Likewise. + (md_assemble): Likewise. + (md_apply_fix): Likewise. + * config/tc-mips.c (nopic_need_relax): Likewise. + (md_begin): Likewise. + (macro_build): Likewise. + (mips16_macro_build): Likewise. + (mips_lookup_insn): Likewise. + (mips_ip): Likewise. + (mips16_ip): Likewise. + * config/tc-mmix.c (sizeof): Likewise. + (mmix_md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-mn10200.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-mn10300.c (HAVE_AM30): Likewise. + (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-moxie.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-msp430.c (md_begin): Likewise. + (msp430_operands): Likewise. + (md_assemble): Likewise. + * config/tc-nds32.c (PV_DONT_CARE): Likewise. + (builtin_isreg): Likewise. + (builtin_regnum): Likewise. + (nds32_init_nds32_pseudo_opcodes): Likewise. + (nds32_lookup_pseudo_opcode): Likewise. + (nds32_relax_hint): Likewise. + (md_begin): Likewise. + (nds32_find_reloc_table): Likewise. + (nds32_elf_append_relax_relocs_traverse): Likewise. + (nds32_relax_branch_instructions): Likewise. + (md_convert_frag): Likewise. + (nds32_elf_analysis_relax_hint): Likewise. + (tc_nds32_regname_to_dw2regnum): Likewise. + * config/tc-nios2.c (nios2_opcode_lookup): Likewise. + (nios2_reg_lookup): Likewise. + (nios2_ps_lookup): Likewise. + (md_begin): Likewise. + * config/tc-ns32k.c (struct hash_control): Likewise. + (parse): Likewise. + (md_begin): Likewise. + * config/tc-pdp11.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-pj.c (fake_opcode): Likewise. + (alias): Likewise. + (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-ppc.c (ppc_setup_opcodes): Likewise. + (md_assemble): Likewise. + * config/tc-pru.c (pru_opcode_lookup): Likewise. + (pru_reg_lookup): Likewise. + (md_begin): Likewise. + (md_end): Likewise. + * config/tc-riscv.c (init_ext_version_hash): Likewise. + (riscv_get_default_ext_version): Likewise. + (riscv_set_arch): Likewise. + (init_opcode_names_hash): Likewise. + (opcode_name_lookup): Likewise. + (enum reg_class): Likewise. + (hash_reg_name): Likewise. + (riscv_init_csr_hash): Likewise. + (reg_csr_lookup_internal): Likewise. + (reg_lookup_internal): Likewise. + (init_opcode_hash): Likewise. + (md_begin): Likewise. + (DECLARE_CSR): Likewise. + (macro_build): Likewise. + (riscv_ip): Likewise. + * config/tc-s390.c (register_name): Likewise. + (s390_setup_opcodes): Likewise. + (md_begin): Likewise. + (md_assemble): Likewise. + (s390_insn): Likewise. + * config/tc-score.c (struct s3_reg_map): Likewise. + (s3_score_reg_parse): Likewise. + (s3_dependency_type_from_insn): Likewise. + (s3_parse_16_32_inst): Likewise. + (s3_parse_48_inst): Likewise. + (s3_insert_reg): Likewise. + (s3_build_reg_hsh): Likewise. + (s3_build_score_ops_hsh): Likewise. + (s3_build_dependency_insn_hsh): Likewise. + (s3_begin): Likewise. + * config/tc-score7.c (struct s7_reg_map): Likewise. + (s7_score_reg_parse): Likewise. + (s7_dependency_type_from_insn): Likewise. + (s7_parse_16_32_inst): Likewise. + (s7_build_score_ops_hsh): Likewise. + (s7_build_dependency_insn_hsh): Likewise. + (s7_insert_reg): Likewise. + (s7_build_reg_hsh): Likewise. + (s7_begin): Likewise. + * config/tc-sh.c (EMPTY): Likewise. + (md_begin): Likewise. + (find_cooked_opcode): Likewise. + * config/tc-sparc.c (md_begin): Likewise. + (sparc_ip): Likewise. + * config/tc-spu.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-tic30.c (md_begin): Likewise. + (tic30_operand): Likewise. + (tic30_parallel_insn): Likewise. + (md_assemble): Likewise. + * config/tc-tic4x.c (TIC4X_ALT_SYNTAX): Likewise. + (tic4x_asg): Likewise. + (tic4x_inst_insert): Likewise. + (tic4x_inst_add): Likewise. + (md_begin): Likewise. + (tic4x_operand_parse): Likewise. + (md_assemble): Likewise. + * config/tc-tic54x.c (MAX_SUBSYM_HASH): Likewise. + (stag_add_field_symbols): Likewise. + (tic54x_endstruct): Likewise. + (tic54x_tag): Likewise. + (tic54x_remove_local_label): Likewise. + (tic54x_clear_local_labels): Likewise. + (tic54x_var): Likewise. + (tic54x_macro_start): Likewise. + (tic54x_macro_info): Likewise. + (tic54x_macro_end): Likewise. + (subsym_isreg): Likewise. + (subsym_structsz): Likewise. + (md_begin): Likewise. + (is_mmreg): Likewise. + (is_type): Likewise. + (encode_condition): Likewise. + (encode_cc3): Likewise. + (encode_cc2): Likewise. + (encode_operand): Likewise. + (tic54x_parse_insn): Likewise. + (tic54x_parse_parallel_insn_firstline): Likewise. + (subsym_create_or_replace): Likewise. + (subsym_lookup): Likewise. + (subsym_substitute): Likewise. + (tic54x_undefined_symbol): Likewise. + * config/tc-tic6x.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-tilegx.c (O_hw2_last_plt): Likewise. + (INSERT_SPECIAL_OP): Likewise. + (md_begin): Likewise. + (tilegx_parse_name): Likewise. + (parse_reg_expression): Likewise. + (md_assemble): Likewise. + * config/tc-tilepro.c (O_tls_ie_load): Likewise. + (INSERT_SPECIAL_OP): Likewise. + (tilepro_parse_name): Likewise. + (parse_reg_expression): Likewise. + (md_assemble): Likewise. + * config/tc-v850.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-vax.c (md_ri_to_chars): Likewise. + (vip_begin): Likewise. + (vip): Likewise. + (main): Likewise. + (md_begin): Likewise. + * config/tc-wasm32.c (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-xgate.c (xgate_parse_operand): Likewise. + (md_begin): Likewise. + (md_assemble): Likewise. + * config/tc-z8k.c (md_begin): Likewise. + (md_assemble): Likewise. + +2020-08-20 Martin Liska + + * dw2gencfi.c (dwcfi_hash_insert): Use htab_t and str_hash_* + functions. + (dwcfi_hash_find): Likewise. + (dwcfi_hash_find_or_make): Likewise. + +2020-08-20 Martin Liska + + * ecoff.c (INIT_VARRAY): Use htab_t. + (add_string): Likewise. + (ecoff_read_begin_hook): Use new str_htab_create. + (get_tag): Use htab_t. + (add_file): Likewise. + +2020-08-20 Martin Liska + + * hash.h (struct string_tuple): New. + (hash_string_tuple): Likewise. + (eq_string_tuple): Likewise. + (string_tuple_alloc): Likewise. + (str_hash_find): Likewise. + (str_hash_find_n): Likewise. + (str_hash_delete): Likewise. + (str_hash_insert): Likewise. + (str_htab_create): Likewise. + +2020-08-20 Martin Liska + + * symbols.c (struct symbol_entry): New. + (hash_symbol_entry): Likewise. + (eq_symbol_entry): Likewise. + (symbol_entry_alloc): Likewise. + (symbol_entry_find): Likewise. + (local_symbol_make): Use htab hash table. + (local_symbol_convert): Likewise. + (symbol_table_insert): Likewise. + (symbol_find_exact_noref): Likewise. + (resolve_local_symbol): Likewise. + (resolve_local_symbol_values): Likewise. + (symbol_begin): Likewise. + (symbol_print_statistics): Likewise. + +2020-08-20 Martin Liska + + * read.c (struct po_entry): New. + (hash_po_entry): Likewise. + (eq_po_entry): Likewise. + (po_entry_alloc): Likewise. + (po_entry_find): Likewise. + (pop_insert): Likewise. + (pobegin): Use htab hash table. + (read_a_source_file): Likewise. + (s_macro): Likewise. + (read_print_statistics): Likewise. + * config/tc-m68k.c (m68k_conditional_pseudoop): Add const qualifier. + * config/tc-m68k.h (m68k_conditional_pseudoop): Likewise. + +2020-08-20 Martin Liska + + * config/tc-iq2000.c (iq2000_add_macro): Use htab hash table. + * macro.c (struct hash_control): Use htab. + (macro_init): Likewise. + (do_formals): Likewise. + (free_macro): Likewise. + (define_macro): Likewise. + (sub_actual): Likewise. + (macro_expand_body): Likewise. + (macro_expand): Likewise. + (check_macro): Likewise. + (delete_macro): Likewise. + (expand_irp): Likewise. + * macro.h (struct macro_hash_entry): New struct. + (hash_macro_entry): New. + (eq_macro_entry): Likewise. + (macro_entry_alloc): Likewise. + (macro_entry_find): Likewise. + (struct formal_hash_entry): Likewise. + (hash_formal_entry): Likewise. + (eq_formal_entry): Likewise. + (formal_entry_alloc): Likewise. + (formal_entry_find): Likewise. + +2020-08-20 Martin Liska + + * as.h: Include hashtab.h. + * hash.c (htab_insert): New. + (htab_print_statistics): Likewise. + * hash.h (htab_insert): Likewise. + (htab_print_statistics): Likewise. + +2020-08-19 Alan Modra + + * testsuite/gas/ppc/int128.s: Correct vcmpuq. + * testsuite/gas/ppc/int128.d: Update. + * testsuite/gas/ppc/xvtlsbb.d: Update. + +2020-08-18 Peter Bergner + + * testsuite/gas/ppc/vsx4.s: Update test to use new mnemonic. + * testsuite/gas/ppc/vsx4.d: Likewise. + +2020-08-17 Alex Coplan + + * config/obj-elf.c (obj_elf_change_section): When repurposing an + existing symbol, ensure that we set sy_value as per other (fresh) + section symbols. + * testsuite/gas/elf/elf.exp: Add new test. + * testsuite/gas/elf/section-symbol-redef.d: New test. + * testsuite/gas/elf/section-symbol-redef.s: Input for test. + +2020-08-13 Nick Clifton + + PR 26359 + * config/obj-som.c (obj_som_init_stab_section): Do nothing if the + $GDB_DEBUG$ section has already been created. + +2020-08-12 Joe Ramsay + + * config/tc-arm.c (do_neon_cvt_1): Parse vcvtne as vcvt-ne for + NS_FD shape when MVE is present + * testsuite/gas/arm/mve-vcvtne-it-bad.d: New test. + * testsuite/gas/arm/mve-vcvtne-it-bad.l: New test. + * testsuite/gas/arm/mve-vcvtne-it-bad.s: New test. + * testsuite/gas/arm/mve-vcvtne-it.d: New test. + * testsuite/gas/arm/mve-vcvtne-it.s: New test. + +2020-08-12 Alex Coplan + + * testsuite/gas/aarch64/mpam-bad.d: New test. + * testsuite/gas/aarch64/mpam-bad.l: Error output. + * testsuite/gas/aarch64/mpam-bad.s: Input. + * testsuite/gas/aarch64/mpam.d: New test. + * testsuite/gas/aarch64/mpam.s: Input. + +2020-08-12 Nick Clifton + + PR 26346 + * doc/c-riscv.texi (RISC-V-Options): Fix typo in the description + of the -mno-csr-check option. + +2020-08-12 Nick Clifton + + * po/ru.po: Updated Russian translation. + +2020-08-10 Alex Coplan + + * config/tc-aarch64.c (parse_sys_reg): Don't assert when parsing + a long system register. + (parse_sys_ins_reg): Likewise. + (sysreg_hash_insert): New. + (md_begin): Use sysreg_hash_insert() to ensure all system + registers are no longer than the maximum length at startup. + * testsuite/gas/aarch64/invalid-sysreg-assert.d: New test. + * testsuite/gas/aarch64/invalid-sysreg-assert.l: Error output. + * testsuite/gas/aarch64/invalid-sysreg-assert.s: Input. + +2020-08-10 Przemyslaw Wirkus + + * config/tc-aarch64.c (parse_sys_reg): Call to + aarch64_sys_ins_reg_supported_p instead of + aarch64_sys_reg_supported_p. + (parse_sys_ins_reg): Add aarch64_sys_reg_deprecated_p check. + * testsuite/gas/aarch64/illegal-sysreg-5.d: New test. + * testsuite/gas/aarch64/illegal-sysreg-5.l: New test. + * testsuite/gas/aarch64/sysreg-5.s: New test. + +2020-08-10 Alan Modra + + * testsuite/gas/ppc/power8.d, + * testsuite/gas/ppc/power8.s: Add miso. + * testsuite/gas/ppc/power9.d, + * testsuite/gas/ppc/power8.s: Add exser, msgsndu, msgclru. + +2020-08-10 Alan Modra + + * testsuite/gas/ppc/power8.d: Update. + * testsuite/gas/ppc/vsx2.d: Update. + +2020-08-10 Alan Modra + + * config/tc-ppc.c (md_assemble): Error for lmw, stmw, lswi, lswx, + stswi, or stswx in little-endian mode. + * testsuite/gas/ppc/476.d, + * testsuite/gas/ppc/476.s: Delete lmw, stmw, lswi, lswx, stswi, stswx. + * testsuite/gas/ppc/a2.d, + * testsuite/gas/ppc/a2.s: Move lmw, stmw, lswi, lswx, stswi, stswx.. + * testsuite/gas/ppc/be.d, + * testsuite/gas/ppc/be.s: ..to here, new big-endian only test. + * testsuite/gas/ppc/le_error.d, + * testsuite/gas/ppc/le_error.l: New little-endian test. + * testsuite/gas/ppc/ppc.exp: Run new tests. + +2020-08-07 H.J. Lu + + * read.c (read_a_source_file): Ignore rest of line on overflow + error. + +2020-08-06 Alex Coplan + + * read.c (read_a_source_file): Use long for local labels, detect + overflow and raise an error for overly-long labels. + * testsuite/gas/all/gas.exp: Add local-label-overflow test. + * testsuite/gas/all/local-label-overflow.d: New test. + * testsuite/gas/all/local-label-overflow.l: Error output. + * testsuite/gas/all/local-label-overflow.s: Input. + +2020-08-04 Christian Groessler + + * testsuite/gas/z8k/inout.d: Adapt to correct encoding of + "sout/soutb #imm,reg" + +2020-08-04 H.J. Lu + + * NEWS: Mention {disp16} pseudo prefix. + +2020-08-04 H.J. Lu + + * testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental + change. + +2020-08-04 Mark Wielaard + + * dwarf2dbg.c (out_debug_abbrev): When DWARF2_VERSION >= 4, use + DW_FORM_udata for DW_AT_high_pc. + (out_debug_info): Use emit_leb128_expr for DW_AT_high_pc, when + DWARF2_VERSION >= 4. + * read.c (emit_leb128_exp): No longer static. + * read.h (emit_leb128_exp): Define. + +2020-08-02 Mark Wielaard + + * dwarf2dbg.c (out_dir_and_file_list): For DWARF5 emit at + least one directory if there is at least one file. Use dirs[1] + if dirs[0] is not set, or if there is no dirs[1] the current + working directory. Use files[1] filename, when files[0] filename + isn't set. + +2020-08-02 Mark Wielaard + + * dwarf2dbg.c (out_debug_info): Emit unit type and abbrev offset + for DWARF5. + * testsuite/gas/elf/dwarf-4-cu.d: New file. + * testsuite/gas/elf/dwarf-4-cu.s: Likewise. + * testsuite/gas/elf/dwarf-5-cu.d: Likewise. + * testsuite/gas/elf/dwarf-5-cu.s: Likewise. + * testsuite/gas/elf/elf.exp: Run dwarf-4-cu and dwarf-5-cu. + +2020-08-02 Mark Wielaard + + * doc/as.texi (--gdwarf-[345]): Fix typo. + +2020-08-03 Jozef Lawrynowicz + + * config/tc-msp430.c (OPTION_MOVE_DATA): Remove. + (md_parse_option): Remove case for OPTION_MOVE_DATA. + (md_longopts): Remove "md" entry. + (md_show_usage): Likewise. + +2020-07-30 H.J. Lu + + PR gas/26305 + * config/tc-i386.c (_i386_insn::disp_encoding): Add + disp_encoding_16bit. + (parse_insn): Check Prefix_XXX for pseudo prefixes. Handle + {disp16}. + (build_modrm_byte): Handle {disp16}. + (i386_index_check): Check invalid {disp16} and {disp32} pseudo + prefixes. + * doc/c-i386.texi: Update {disp32} documentation and document + {disp16}. + * testsuite/gas/i386/i386.exp: Run x86-64-inval-pseudo. + * testsuite/gas/i386/inval-pseudo.s: Add {disp32}/{disp16} + tests. + * testsuite/gas/i386/pseudos.s: Add {disp8}/{disp32} vmovaps + tests with 128-byte displacement. Add {disp16} tests. + * testsuite/gas/i386/x86-64-pseudos.s: Add {disp8}/{disp32} + vmovaps test. Add (%r13)/(%r13d) tests. + * testsuite/gas/i386/x86-64-inval-pseudo.l: New file. + * testsuite/gas/i386/x86-64-inval-pseudo.s: Likewise. + * testsuite/gas/i386/inval-pseudo.l: Updated. + * testsuite/gas/i386/pseudos.d: Likewise. + * testsuite/gas/i386/x86-64-pseudos.d: Likewise. + +2020-07-30 Rainer Orth + + * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. + * Makefile.in, doc/Makefile.in: Regenerate. + * configure: Regenerate. + +2020-07-30 H.J. Lu + + * testsuite/gas/elf/dwarf2-3.d:Pass --gdwarf-3 to assembler. + * testsuite/gas/elf/dwarf2-5.d: Likewise. + * testsuite/gas/i386/dw2-compress-3a.d: Likewise. + * testsuite/gas/i386/dw2-compress-3b.d: Likewise. + * testsuite/gas/i386/dw2-compressed-3a.d: Likewise. + * testsuite/gas/i386/dw2-compressed-3b.d: Likewise. + +2020-07-30 Nick Clifton + + * as.c (dwarf_level): Initialise to 3 in case this is not set on + the command line. + +2020-07-29 Maciej W. Rozycki + + * testsuite/gas/mips/global-local-symtab-sort-o32.d: New test. + * testsuite/gas/mips/global-local-symtab-sort-o32t.d: New test. + * testsuite/gas/mips/global-local-symtab-sort-n32.d: New test. + * testsuite/gas/mips/global-local-symtab-sort-n32t.d: New test. + * testsuite/gas/mips/global-local-symtab-sort-n64.d: New test. + * testsuite/gas/mips/global-local-symtab-sort-n64t.d: New test. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2020-07-29 Maciej W. Rozycki + + * testsuite/gas/mips/global-local-symtab-o32.d: New test. + * testsuite/gas/mips/global-local-symtab-o32t.d: New test. + * testsuite/gas/mips/global-local-symtab-n32.d: New test. + * testsuite/gas/mips/global-local-symtab-n32t.d: New test. + * testsuite/gas/mips/global-local-symtab-n64.d: New test. + * testsuite/gas/mips/global-local-symtab.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2020-07-28 H.J. Lu + + PR gas/26305 + * config/tc-i386.c (build_modrm_byte): Use disp32/disp16 on + (%bp)/(%ebp)/(%rbp) for {disp32}. + * doc/c-i386.texi: Update {disp32} documentation. + * testsuite/gas/i386/pseudos.s: Add (%bp)/(%ebp) tests. + * testsuite/gas/i386/x86-64-pseudos.s: Add (%ebp)/(%rbp) tests. + * testsuite/gas/i386/pseudos.d: Updated. + * testsuite/gas/i386/x86-64-pseudos.d: Likewise. + +2020-07-27 H.J. Lu + + * doc/as.texi: Replace preceeded with preceded. + +2020-07-22 Maciej W. Rozycki + + * testsuite/gas/mips/jal-svr4pic-irix.d: New file. + * testsuite/gas/mips/mips1@jal-svr4pic-irix.d: New file. + * testsuite/gas/mips/mipsr6@jal-svr4pic-irix.d: New file. + * testsuite/gas/mips/micromips@jal-svr4pic-irix.d: New file. + * testsuite/gas/mips/r3000@jal-svr4pic-irix.d: New file. + * testsuite/gas/mips/jal-svr4pic-local-irix.d: New file. + * testsuite/gas/mips/mips1@jal-svr4pic-local-irix.d: New file. + * testsuite/gas/mips/micromips@jal-svr4pic-local-irix.d: New + file. + * testsuite/gas/mips/r3000@jal-svr4pic-local-irix.d: New file. + * testsuite/gas/mips/jal-svr4pic-noreorder-irix.d: New file. + * testsuite/gas/mips/mips1@jal-svr4pic-noreorder-irix.d: New + file. + * testsuite/gas/mips/mipsr6@jal-svr4pic-noreorder-irix.d: New + file. + * testsuite/gas/mips/micromips@jal-svr4pic-noreorder-irix.d: New + file. + * testsuite/gas/mips/r3000@jal-svr4pic-noreorder-irix.d: New + file. + * testsuite/gas/mips/jal-xgot-irix.d: New file. + * testsuite/gas/mips/jalr2-irix.d: New file. + * testsuite/gas/mips/micromips-branch-relax-insn32-pic-irix.d: + New file. + * testsuite/gas/mips/micromips-branch-relax-pic-irix.d: New + file. + * testsuite/gas/mips/mips-abi32-pic2-irix.d: New file. + * testsuite/gas/mips/jal-svr4pic-local.d: Don't exclude + `*-*-irix*' targets. Add source file designator. + * testsuite/gas/mips/mips1@jal-svr4pic-local.d: Don't exclude + `*-*-irix*' targets. + * testsuite/gas/mips/r3000@jal-svr4pic-local.d: Likewise. + * testsuite/gas/mips/micromips@jal-svr4pic-local.d: Likewise. + * testsuite/gas/mips/jalr2.d: Add name designator. + * testsuite/gas/mips/mips.exp: Use respective IRIX variants for + tests involving the JALR relocation throughout. + +2020-07-22 Maciej W. Rozycki + + * testsuite/gas/mips/mips.exp: Use a helper variable for + IRIX/non-IRIX test selection. + +2020-07-21 Jan Beulich + + * testsuite/gas/i386/evex-no-scale-64.d, + testsuite/gas/i386/addr32.d, + testsuite/gas/i386/x86-64-addr32-intel.d, + testsuite/gas/i386/x86-64-addr32.d: Adjust expectations. + +2020-07-21 Cooper Qu + + * config/tc-csky.c (md_begin): Fix tests of arch and mach flags. + +2020-07-21 Jan Beulich + + * testsuite/gas/i386/evex-no-scale-32.d, + testsuite/gas/i386/evex-no-scale-64.d: Add #source and #pass. + * testsuite/gas/i386/evex-no-scale-32.s, + testsuite/gas/i386/evex-no-scale-64.s: Rename / fold into ... + * testsuite/gas/i386/evex-no-scale.s: ... this. Use .struct + instead of .section. + * testsuite/gas/i386/i386.exp: Move above tests out of ELF- + specific section. + +2020-07-21 Maciej W. Rozycki + + * config/tc-mips.c (prev_reloc_op_frag): Remove variable. + (my_getSmallExpression): Adjust accordingly. + +2020-07-20 Jan Beulich + + PR gas/4572 + * config/tc-i386.c (i386_comment_chars): Drop TE_I386AIX from + conditional around it. + (md_begin): Insert backslash into operand_chars[] when slash is + a comment character. + * config/tc-i386-intel.c (i386_operator): Recognize \/, \%, and + \* as operators when / may be a comment character. + * testsuite/gas/i386/svr4.s, testsuite/gas/i386/svr4.d: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2020-07-20 Jan Beulich + + PR gas/4572 + * app.c (last_char): Drop TC_ARM conditional around it. + (struct app_save): Drop TC_ARM conditional around last_char. + (app_push, app_pop): Drop TC_ARM conditional from last_char + accesses. + (do_scrub_chars): Likewise. Drop TC_ARM conditional from + backslash-precedes-comment-character check. + +2020-07-20 Jan Beulich + + * config/tc-i386.c (frag_opcode_byte): New. + (output_branch): Emit error when in absolute section. + (output_jump, output_insn): Use frag_opcode_byte. Handle being + in absolute section. + (output_interseg_jump, output_disp, output_imm): Handle being in + absolute section. + * testsuite/gas/i386/sizing.s, + testsuite/gas/i386/sizing32.d, + testsuite/gas/i386/sizing64.d: New. + * testsuite/gas/i386/i386.exp: Run new tests. + +2020-07-20 Jan Beulich + + * testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside + is_elf_format as applicable; merely exclude iamcu tests. + +2020-07-19 H.J. Lu + + PR gas/26263 + * config/tc-i386.c (i386_validate_fix): Change PLT32 reloc + against section to PC32 reloc. + * testsuite/gas/i386/relax-5.d: Updated. + * testsuite/gas/i386/x86-64-relax-4.d: Likewise. + +2020-07-15 H.J. Lu + + PR gas/26237 + * testsuite/gas/i386/evex-no-scale-64.d: Updated. + * testsuite/gas/i386/addr32.d: Likewise. + * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise. + * testsuite/gas/i386/x86-64-addr32.d: Likewise. + +2020-07-15 Nick Clifton + + * write.c (create_note_reloc): Add desc2_size parameter. Zero out + the addend field of REL relocations. Store the full addend into + the note for REL relocations. + +2020-07-15 Jan Beulich + + * testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push + immediate. + * testsuite/gas/i386/x86-64-stack-intel.d, + testsuite/gas/i386/x86-64-stack-suffix.d, + testsuite/gas/i386/x86-64-stack.d: Adjust expectations. + +2020-07-15 Jan Beulich + + * testsuite/gas/i386/disassem.d, + testsuite/gas/i386/ilp32/x86-64-branch.d, + testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d, + testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d, + testsuite/gas/i386/noreg32.d, + testsuite/gas/i386/noreg64-rex64.d, + testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d, + testsuite/gas/i386/opcode.d, + testsuite/gas/i386/solaris/x86-64-branch-2.d, + testsuite/gas/i386/solaris/x86-64-jump.d, + testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d, + testsuite/gas/i386/solaris/x86-64-nop-3.d, + testsuite/gas/i386/solaris/x86-64-nop-4.d, + testsuite/gas/i386/solaris/x86-64-nop-5.d, + testsuite/gas/i386/solaris/x86-64-relax-2.d, + testsuite/gas/i386/solaris/x86-64-relax-3.d, + testsuite/gas/i386/x86-64-align-branch-1a.d, + testsuite/gas/i386/x86-64-align-branch-1b.d, + testsuite/gas/i386/x86-64-align-branch-1c.d, + testsuite/gas/i386/x86-64-align-branch-1d.d, + testsuite/gas/i386/x86-64-align-branch-1e.d, + testsuite/gas/i386/x86-64-align-branch-1f.d, + testsuite/gas/i386/x86-64-align-branch-1g.d, + testsuite/gas/i386/x86-64-align-branch-1h.d, + testsuite/gas/i386/x86-64-align-branch-1i.d, + testsuite/gas/i386/x86-64-align-branch-2a.d, + testsuite/gas/i386/x86-64-align-branch-2b.d, + testsuite/gas/i386/x86-64-align-branch-2c.d, + testsuite/gas/i386/x86-64-align-branch-3.d, + testsuite/gas/i386/x86-64-align-branch-4a.d, + testsuite/gas/i386/x86-64-align-branch-4b.d, + testsuite/gas/i386/x86-64-align-branch-5.d, + testsuite/gas/i386/x86-64-align-branch-6.d, + testsuite/gas/i386/x86-64-branch-2.d, + testsuite/gas/i386/x86-64-branch-3.d, + testsuite/gas/i386/x86-64-branch.d, + testsuite/gas/i386/x86-64-disassem.d, + testsuite/gas/i386/x86-64-disp32.d, + testsuite/gas/i386/x86-64-gotpcrel-no-relax.d, + testsuite/gas/i386/x86-64-gotpcrel.d, + testsuite/gas/i386/x86-64-ifunc.d, + testsuite/gas/i386/x86-64-jump.d, + testsuite/gas/i386/x86-64-lfence-byte.d, + testsuite/gas/i386/x86-64-lfence-indbr-a.d, + testsuite/gas/i386/x86-64-lfence-indbr-b.d, + testsuite/gas/i386/x86-64-lfence-indbr-c.d, + testsuite/gas/i386/x86-64-lfence-load.d, + testsuite/gas/i386/x86-64-lfence-ret-a.d, + testsuite/gas/i386/x86-64-lfence-ret-b.d, + testsuite/gas/i386/x86-64-lfence-ret-c.d, + testsuite/gas/i386/x86-64-lfence-ret-d.d, + testsuite/gas/i386/x86-64-lfence-ret-e.d, + testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d, + testsuite/gas/i386/x86-64-mpx-branch-1.d, + testsuite/gas/i386/x86-64-mpx.d, + testsuite/gas/i386/x86-64-nop-3.d, + testsuite/gas/i386/x86-64-nop-4.d, + testsuite/gas/i386/x86-64-nop-5.d, + testsuite/gas/i386/x86-64-nops-7.d, + testsuite/gas/i386/x86-64-notrack.d, + testsuite/gas/i386/x86-64-opcode.d, + testsuite/gas/i386/x86-64-relax-2.d, + testsuite/gas/i386/x86-64-relax-3.d, + testsuite/gas/i386/x86-64-relax-4.d, + testsuite/gas/i386/x86-64-rtm.d, + testsuite/gas/i386/x86-64-stack.d, + testsuite/gas/i386/x86-64-unique.d, + testsuite/gas/i386/x86_64-intel.d: Adjust expectations. + +2020-07-14 H.J. Lu + + PR gas/26237 + * testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around + address. + * testsuite/gas/i386/x86-64-addr32.s: Likewise. + * testsuite/gas/i386/addr32.d: Updated. + * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise. + * testsuite/gas/i386/x86-64-addr32.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise. + +2020-07-14 Jan Beulich + + * testsuite/gas/i386/intel.s: Use dr instead of db. + * testsuite/gas/i386/intel-intel.d: Disambiguate name. + * testsuite/gas/i386/intel.d, + testsuite/gas/i386/opcode-intel.d: Adjust expectations. + +2020-07-14 Jan Beulich + + * testsuite/gas/i386/prefix.d: Adjust expectations. + +2020-07-14 Jan Beulich + + * testsuite/gas/i386/x86-64-avx-intel.d, + testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations. + +2020-07-14 Jan Beulich + + * testsuite/gas/i386/movbe-suffix.d, + testsuite/gas/i386/x86-64-movbe-suffix.d: New. + * testsuite/gas/i386/i386.exp: Run new tests. + +2020-07-14 Jan Beulich + + * testsuite/gas/i386/crc32-suffix.d, + testsuite/gas/i386/x86-64-crc32-suffix.d: New. + * testsuite/gas/i386/i386.exp: Run new tests. + * testsuite/gas/i386/arch-10-bdver1.d, + testsuite/gas/i386/arch-10-bdver2.d, + testsuite/gas/i386/arch-10-bdver3.d, + testsuite/gas/i386/arch-10-bdver4.d, + testsuite/gas/i386/arch-10-btver1.d, + testsuite/gas/i386/arch-10-btver2.d, + testsuite/gas/i386/arch-10-lzcnt.d, + testsuite/gas/i386/arch-10-prefetchw.d, + testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d, + testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d, + testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d, + testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d, + testsuite/gas/i386/x86-64-arch-2-bdver1.d, + testsuite/gas/i386/x86-64-arch-2-bdver2.d, + testsuite/gas/i386/x86-64-arch-2-bdver3.d, + testsuite/gas/i386/x86-64-arch-2-bdver4.d, + testsuite/gas/i386/x86-64-arch-2-btver1.d, + testsuite/gas/i386/x86-64-arch-2-btver2.d, + testsuite/gas/i386/x86-64-arch-2-lzcnt.d, + testsuite/gas/i386/x86-64-arch-2-prefetchw.d, + testsuite/gas/i386/x86-64-arch-2.d, + testsuite/gas/i386/x86-64-crc32.d, + testsuite/gas/i386/x86-64-pseudos.d, + testsuite/gas/i386/x86-64-sse-noavx.d, + testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations. + +2020-07-14 Jan Beulich + + * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for + ModR/M-encoded byte register cases. + * testsuite/gas/i386/x86-64-pseudos.d, + testsuite/gas/i386/x86-64-reg-intel.d, + testsuite/gas/i386/x86-64-reg.d: Adjust expectations. + +2020-07-14 Jan Beulich + + * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for + not-ModR/M-encoded byte register cases. + * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations. + +2020-07-14 Jan Beulich + + * testsuite/gas/i386/ilp32/x86-64-arch-1.d, + testsuite/gas/i386/ilp32/x86-64-arch-2.d, + testsuite/gas/i386/ilp32/x86-64-avx-intel.d, + testsuite/gas/i386/ilp32/x86-64-avx.d, + testsuite/gas/i386/ilp32/x86-64-crc32-intel.d, + testsuite/gas/i386/ilp32/x86-64-crc32.d, + testsuite/gas/i386/ilp32/x86-64-gotpcrel.d, + testsuite/gas/i386/ilp32/x86-64-ifunc.d, + testsuite/gas/i386/ilp32/x86-64-reg-intel.d, + testsuite/gas/i386/ilp32/x86-64-reg.d, + testsuite/gas/i386/ilp32/x86-64-rep-suffix.d, + testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d, + testsuite/gas/i386/ilp32/x86-64-sse4_2.d, + testsuite/gas/i386/ilp32/x86-64-stack-intel.d, + testsuite/gas/i386/ilp32/x86-64-stack-suffix.d, + testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir + dump expectations. + +2020-07-13 H.J. Lu + + * config/tc-i386.c (offset_in_range): Remove 32-bit sign + extension. + +2020-07-13 Nick Clifton + + * po/fr.po: Updated French translation. + +2020-07-13 Alan Modra + + * testsuite/gas/elf/dwarf2-7.d: Remove most xfails. + * testsuite/gas/elf/dwarf2-12.d: Likewise. + * testsuite/gas/elf/dwarf2-13.d: Likewise. + * testsuite/gas/elf/dwarf2-14.d: Likewise. + +2020-07-11 H.J. Lu + + * config/tc-i386.c (output_insn): Check i.xstate to set + GNU_PROPERTY_X86_FEATURE_2_TMM. + * testsuite/gas/i386/i386.exp: Run x86-64-property-7, + x86-64-property-8 and x86-64-property-9. + * testsuite/gas/i386/x86-64-property-7.d: New file. + * testsuite/gas/i386/x86-64-property-7.s: Likewise. + * testsuite/gas/i386/x86-64-property-8.d: Likewise. + * testsuite/gas/i386/x86-64-property-8.s: Likewise. + * testsuite/gas/i386/x86-64-property-9.d: Likewise. + * testsuite/gas/i386/x86-64-property-9.s: Likewise. + +2020-07-10 H.J. Lu + + * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm, + has_regymm, has_regzmm and has_regtmm. Add xstate. + (md_assemble): Set i.xstate from operand types in instruction + template. + (build_modrm_byte): Updated. + (output_insn): Check i.xstate. + * testsuite/gas/i386/i386.exp: Run property-6 and + x86-64-property-6. + * testsuite/gas/i386/property-6.d: New file. + * testsuite/gas/i386/property-6.s: Updated. + * testsuite/gas/i386/x86-64-property-6.d: Likewise. + +2020-07-10 H.J. Lu + + * testsuite/gas/i386/property-5.d: Correct test name. + +2020-07-10 Lili Cui + + * NEWS: Mention support for Intel AMX instructions. + * config/tc-i386.c (i386_error): Add invalid_sib_address. + (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile. + (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile. + (match_simd_size): Add tmmword check. + (operand_type_match): Add tmmword. + (type_names): Add rTMM. + (i386_error): Add invalid_tmm_register_set. + (check_VecOperands): Handle invalid_sib_address and + invalid_tmm_register_set. + (match_template): Handle invalid_sib_address. + (build_modrm_byte): Handle non-vector SIB and zmmword. + (i386_index_check): Disallow RegIP for non-vector SIB. + (check_register): Handle zmmword. + * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile. + * testsuite/gas/i386/i386.exp: Add AMX new tests. + * testsuite/gas/i386/intel-regs.d: Add tmm. + * testsuite/gas/i386/intel-regs.s: Add tmm. + * testsuite/gas/i386/x86-64-amx-intel.d: New. + * testsuite/gas/i386/x86-64-amx-inval.l: New. + * testsuite/gas/i386/x86-64-amx-inval.s: New. + * testsuite/gas/i386/x86-64-amx.d: New. + * testsuite/gas/i386/x86-64-amx.s: New. + * testsuite/gas/i386/x86-64-amx-bad.d: New. + * testsuite/gas/i386/x86-64-amx-bad.s: New. + +2020-07-10 Tom de Vries + + * testsuite/gas/elf/dwarf2-11.d: Update expected output from + readelf's line table decoding. + * testsuite/gas/elf/dwarf2-12.d: Likewise. + * testsuite/gas/elf/dwarf2-13.d: Likewise. + * testsuite/gas/elf/dwarf2-14.d: Likewise. + * testsuite/gas/elf/dwarf2-15.d: Likewise. + * testsuite/gas/elf/dwarf2-16.d: Likewise. + * testsuite/gas/elf/dwarf2-17.d: Likewise. + * testsuite/gas/elf/dwarf2-18.d: Likewise. + * testsuite/gas/elf/dwarf2-19.d: Likewise. + * testsuite/gas/elf/dwarf2-5.d: Likewise. + * testsuite/gas/elf/dwarf2-6.d: Likewise. + * testsuite/gas/elf/dwarf2-7.d: Likewise. + +2020-07-09 H.J. Lu + + * config/tc-i386.c (output_insn): Set YMM/ZMM features for + VEX/EVEX vector instructions. + * testsuite/gas/i386/property-4.d: New file. + * testsuite/gas/i386/property-4.s: Likewise. + * testsuite/gas/i386/property-5.d: Likewise. + * testsuite/gas/i386/property-5.s: Likewise. + * testsuite/gas/i386/x86-64-property-4.d: Likewise. + * testsuite/gas/i386/x86-64-property-5.d: Likewise. + +2020-07-09 H.J. Lu + + * NEWS: Mention --enable-x86-used-note. + * configure.ac: Configure with --enable-x86-used-note by default + for Linux/x86. + * configure: Regenerated. + +2020-07-09 Alan Modra + + * config/obj-coff.h: Remove TE_PE support. + * config/tc-ppc.c: Likewise. + * config/tc-ppc.h: Likewise. + * configure.tgt: Remove powerpc PE and powerpc lynxos. + * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE + condition. + * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE. + +2020-07-08 Jan Beulich + + * testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d: + New. + * testsuite/gas/i386/i386.exp: Run new tests. + +2020-07-07 Claudiu Zissulescu + + * config/tc-arc.c (find_opcode_match): Add error messages. + * testsuite/gas/arc/add_s-err.s: Update test. + * testsuite/gas/arc/asm-errors.err: Likewise. + * testsuite/gas/arc/cpu-em-err.s: Likewise. + * testsuite/gas/arc/hregs-err.s: Likewise. + * testsuite/gas/arc/warn.s: Likewise. + +2020-07-07 H.J. Lu + + PR gas/26212 + * doc/c-i386.texi: Remove an incorrect AVX2 entry. + +2020-07-07 Alan Modra + + * testsuite/gas/all/gas.exp: Use is_xcoff_format. + * testsuite/gas/ppc/ppc.exp: Likewise. + * testsuite/gas/all/weakref1l.d: Likewise. + +2020-07-07 Nick Clifton + + * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in + expected output. + +2020-07-06 Jan Beulich + + * testsuite/gas/i386/x86-64-avx512bw-wig1.d, + testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d, + testsuite/gas/i386/x86-64-evex-wig1.d, + testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust + expectations. + +2020-07-06 Jan Beulich + + * testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests. + * testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line. + * testsuite/gas/i386/avx512f-opts-intel.d, + testsuite/gas/i386/avx512f-opts.d + testsuite/gas/i386/x86-64-avx512f-opts-intel.d + testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations. + +2020-07-06 Yuri Chornoivan + + PR 26204 + * config/tc-arm.c: Fix spelling mistake. + * config/tc-riscv.c: Likewise. + * config/tc-z80.c: Likewise. + * po/gas.pot: Regenerate. + +2020-07-06 Nick Clifton + + * po/uk.po: Updated Ukranian translation. + +2020-07-04 Nick Clifton + + * configure: Regenerate. + * po/gas.pot: Regenerate. + +2020-07-04 Nick Clifton + + * version.m4: Change version number to 2.35.50. + * configure: Regenerate. + * po/bfd.pot: Regenerate. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-07-03 Alan Modra + + PR 26028 + * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options. + +2020-07-02 H.J. Lu + + * config/tc-i386.c (build_modrm_byte): Check vexswapsources to + swap two source operands. + +2020-07-02 Nick Clifton + + * testsuite/gas/all/fill-1.d: Skip for MeP targets. + +2020-07-02 Alex Coplan + + * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't + segfault on negative chars. + * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test. + * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input. + +2020-07-02 Nick Clifton + + PR 26028 + * testsuite/gas/ia64/group-2.d: Add -T option to readelf + command line. + * testsuite/gas/ia64/unwind.d: Likewise. + * testsuite/gas/mmix/bspec-1.d: Likewise. + * testsuite/gas/mmix/bspec-2.d: Likewise. + * testsuite/gas/mmix/comment-1.d: Likewise. + * testsuite/gas/tic6x/scomm-directive-4.d: Likewise. + +2020-07-01 Alan Modra + + * config/tc-xc16x.c (md_apply_fix): Add FIXME. + +2020-07-01 Alan Modra + + * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax + in data sections, and mep. + +2020-06-30 H.J. Lu + + * NEWS: Mention x86 NaCl target support removal. + * config/tc-i386.c: Remove x86 NaCl target support. + * config/tc-i386.h: Likewise. + * configure.tgt: Likewise. + * testsuite/gas/i386/i386.exp: Likewise. + * testsuite/gas/i386/iamcu-1.d: Likewise. + * testsuite/gas/i386/iamcu-2.d: Likewise. + * testsuite/gas/i386/iamcu-3.d: Likewise. + * testsuite/gas/i386/iamcu-4.d: Likewise. + * testsuite/gas/i386/iamcu-5.d: Likewise. + * testsuite/gas/i386/k1om.d: Likewise. + * testsuite/gas/i386/l1om.d: Likewise. + +2020-06-30 Nelson Chu + + * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the + checking into riscv_csr_address. + (riscv_csr_version_check): Likewise. + (riscv_csr_address): New function. Return the suitable CSR address + after checking the ISA dependency and versions. Issue warnings if + we find any conflict and -mcsr-check is set. CSR_CLASS_F and + CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the + priv spec versions for them. + (reg_csr_lookup_internal): Call riscv_csr_address to find the + suitable CSR address. + * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11. + * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise. + * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise. + * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the + priv spec warnings here. These warnings are added by accident. + Remove them and only focus on the ISA dependency warnings. + * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since + dscratch0 and dscratch1 are regarded as the unprivileged CSR rather + than the privileged ones. + * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise. + * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR. + * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise. + * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise. + * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise. + * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise. + * testsuite/gas/riscv/csr-dw-regnums.d: Likewise. + * testsuite/gas/riscv/csr-dw-regnums.s: Likewise. + +2020-06-29 H.J. Lu + + * config/tc-i386.c (build_vex_prefix): Support VEX base opcode + length > 1. + (md_assemble): Don't process ImmExt without operands. + +2020-06-29 Hans-Peter Nilsson + + PR gas/25331 + * config/tc-mmix.c (md_assemble) : This fixup affects 1 byte, not 8. + Also, set its fx_no_overflow. + (md_convert_frag) : + Similarly this fixup affects 4 bytes, not 8 and needs its + fx_no_overflow set. + * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define. + * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test. + +2020-06-29 Alan Modra + + * config/tc-s12z.c: Use C style comments. + * config/tc-z80.c: Likewise. + * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code. + +2020-06-26 H.J. Lu + + * config/tc-i386.c (md_assemble): Process ImmExt without + operands. + +2020-06-26 H.J. Lu + + * config/tc-i386.c (check_VecOperands): Replace vecsib with sib. + Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128, + VECSIB256 and VECSIB512, respectively. + (build_modrm_byte): Replace vecsib with sib. + +2020-06-26 Jan Beulich + + * testsuite/gas/i386/nop-1-suffix.d: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2020-06-26 Pat Bernardi + + * config/tc-m68k.c (m68k_elf_gnu_attribute): New function. + (md_pseudo_table): Handle "gnu_attribute". + * doc/as.texi: Document GNU attribute for M68K. + +2020-06-25 Nick Clifton + + PR 26141 + * config/tc-arm.c (arm_force_relocation): Force resolution of + BFD_RELOC_THUMB_PCREL_BRANCH12 relocations. + * testsuite/gas/arm/plt-1.d: Adjust expected disassembly. + +2020-06-25 Jan Beulich + + * config/tc-i386.c (md_assemble): Move call to process_immext() + ... + (process_operands): ... here. + +2020-06-25 Jan Beulich + + * config/tc-i386.c (process_suffix): Skip ambiguous operand size + diagnostic when there is a sizing prefix. Switch to word/dword/ + qword encoding when there is a sizing prefix and no (explicit or + derived) suffix. + (update_imm): Handle presence of a sizing prefix. + * testsuite/gas/i386/noreg16-data32.d, + testsuite/gas/i386/noreg32-data16.d, + testsuite/gas/i386/noreg32-data16.e, + testsuite/gas/i386/noreg64-data16.d, + testsuite/gas/i386/noreg64-data16.e, + testsuite/gas/i386/noreg64-rex64.d: New. + * testsuite/gas/i386/i386.exp: Run new tests. + * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s: + Introduce and use pfx* macros. + * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit + addressing. + * testsuite/gas/i386/noreg16.d: Adjust expectations. + +2020-06-25 Jan Beulich + + * testsuite/gas/i386/avx-16bit.d, + testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d, + testsuite/gas/i386/avx512f-16bit.d, + testsuite/gas/i386/avx512f.d, + testsuite/gas/i386/evex-lig256.d, + testsuite/gas/i386/evex-lig512.d + testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d, + testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d, + testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d, + testsuite/gas/i386/sse2-16bit.d, + testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust + expectations. + +2020-06-25 Jan Beulich + + * config/tc-i386.c (md_assemble): Also reject explicit REX + prefixes with VEX and alike encoded insns. Zap consumed bits + from i.rex. + (output_insn): Don't ignore REX prefix for VEX and alike + encodings; abort() instead if encountered. + * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases + ... + * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here. + * testsuite/gas/i386/x86-64-pseudos.d, + testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations. + +2020-06-25 Jan Beulich + + * config/tc-i386.c (process_operands): Translate explicit REX + prefix into i.rex for SSE2AVX templates. + (set_rex_vrex): New helper. + (build_modrm_byte): Use it. + * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict + REX prefixes. + * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations. + +2020-06-25 Jan Beulich + + * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX + templates when there's no data size prefix. + (md_assemble): Reject data size prefix also for legacy encoded + SIMD templates. + * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s: + Uncomment previously not working line. + * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with + data16 prefix. + * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l, + testsuite/gas/i386/sse2avx.d: Adjust expectations. + +2020-06-25 Jan Beulich + + * config/tc-i386.c (build_evex_prefix): Drop early setting of + vec_length. + +2020-06-23 Nelson Chu + + * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to + explicit_priv_attr. It used to indicate CSR or priv instructions are + explictly used. + (riscv_is_priv_insn): Return True if it is a privileged instruction. + (riscv_ip): Call riscv_is_priv_insn to check whether the instruction + is privileged or not. If it is, then set explicit_priv_attr to TRUE. + (riscv_write_out_attrs): Clarification of when to generate the elf + priv spec attributes. + * testsuite/gas/riscv/attribute-11.s: Add comments. + * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol + `priv_insn_` to decide which priv instruction is expected to used. + ( is a to e.) + * testsuite/gas/riscv/attribute-14a.d: Likewise. + * testsuite/gas/riscv/attribute-14b.d: Likewise. + * testsuite/gas/riscv/attribute-14c.d: Likewise. + * testsuite/gas/riscv/attribute-14d.d: Likewise. + * testsuite/gas/riscv/attribute-14e.d: Likewise. + +2020-06-22 Nelson Chu + + * config/tc-riscv.c (buf_size, buf): Remove the unused variables. + (riscv_set_default_priv_spec): Get the priv spec version from the + priv spec attributes by riscv_get_priv_spec_class_from_numbers. + +2020-06-20 Alan Modra + + * configure.tgt: Set bfd_gas for all SH targets. + +2020-06-18 Jan Beulich + + * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case. + * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust + expectations. + +2020-06-16 Lili Cui + + * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect + cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS. + * doc/c-i386.texi: Add avx512_vp2intersect. + +2020-06-16 Jan Beulich + + * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check + conditional. + * testsuite/gas/i386/sse-check.s: Adjust comment. + * testsuite/gas/i386/sse-check-error.l, + testsuite/gas/i386/sse-check-warn.e, + testsuite/gas/i386/x86-64-sse-check-error.l: Adjust + expectations. + +2020-06-16 Alan Modra + + * config/tc-tic30.h: Remove OBJ_AOUT support. + * configure.tgt: Delete tic30-*-*aout* entry. + +2020-06-15 Max Filippov + + * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New + macros. + (elf32xtensa_abi): New declaration. + (option_abi_windowed, option_abi_call0): New enum constants. + (md_longopts): Add entries for --abi-windowed and --abi-call0. + (md_parse_option): Add handlers for --abi-windowed and + --abi-call0. + (xtensa_add_config_info): Use xtensa_abi_choice instead of + XSHAL_ABI to format ABI tag. + * doc/as.texi (Target Xtensa options): Add --abi-windowed and + --abi-call0 to the list of options. + * doc/c-xtensa.texi: Add description for options --abi-windowed + and --abi-call0. + * testsuite/gas/xtensa/abi-call0.d: New test definition. + * testsuite/gas/xtensa/abi-windowed.d: New test definition. + * testsuite/gas/xtensa/abi.s: New test source. + +2020-06-14 H.J. Lu + + PR gas/26115 + * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with + xsusldtrk. + * testsuite/gas/i386/tsxldtrk.s: Likewise. + * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise. + * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise. + +2020-06-12 Nelson Chu + + * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed. + * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise. + * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise. + +2020-06-09 Seth Girvan + + * doc/c-avr.texi: Improve wording. + +2020-06-09 Jan Beulich + + * testsuite/gas/i386/x86-64-pseudos-bad.s, + testsuite/gas/i386/x86-64-pseudos-bad.l: New. + +2020-06-09 Jan Beulich + + * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX + encoding tests. + * testsuite/gas/i386/prefix.d: Adjust expectations. + +2020-06-09 Jan Beulich + + * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix + with VEX/EVEX encoding tests. + * testsuite/gas/i386/prefix.d: Adjust expectations. + +2020-06-09 Jan Beulich + + * config/tc-i386.c (process_suffix): Restrict defaulting to 'q' + suffix. + * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases. + * testsuite/gas/i386/noreg64.d: Adjust expectations. + * testsuite/gas/i386/noreg-intel64.d, + testsuite/gas/i386/noreg-intel64.l, + testsuite/gas/i386/noreg-intel64.s: New. + * testsuite/gas/i386/i386.exp: Run new tests. + +2020-06-09 Jan Beulich + + * config/tc-i386.c (vex_encoding_error): New enumerator. + (VEX_check_operands): Rename to VEX_check_encoding. Check + for vex_encoding_error. Move Imm4 handling ... + (check_VecOperands): ... here. + (match_template): Call VEX_check_encoding when there are no + operands. Split construct calling check_VecOperands and + VEX_check_encoding (when there are operands). + (check_register): Don't blindly set vex_encoding_evex. + * testsuite/gas/i386/pseudos-bad.s, + testsuite/gas/i386/pseudos-bad.l: New. + * testsuite/gas/i386/i386.exp: Run new test. + * testsuite/gas/i386/xmmhi64.s: Drop {vex2}. + +2020-06-08 Alex Coplan + + * config/tc-arm.c (insns): Add dfb. + * testsuite/gas/arm/dfb.d: New test. + * testsuite/gas/arm/dfb.s: Input for test. + +2020-06-08 Nick Clifton + + * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets. + +2020-06-08 Jan Beulich + + * config/tc-i386.c (pi): Add checks for RegMask and RegBND. + +2020-06-08 Jan Beulich + + * config/tc-i386.c (check_byte_reg): Drop dead conditional + around as_bad(). + +2020-06-08 Jan Beulich + + * config/tc-i386.c (check_register): Split RegTR handling, to + fail recognition also in 64-bit mode as well as with i586 or + i686 explicitly enabled. + * testsuite/gas/i386/x86_64.s: Add insns referencing tr. + * testsuite/gas/i386/x86_64-intel.d, + testsuite/gas/i386/x86_64.d: Adjust expectations. + +2020-06-08 Jan Beulich + + * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations. + * testsuite/gas/cfi/cfi.exp: Run this test. + +2020-06-08 Jan Beulich + + * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg + check to %st(N) parsing logic. + * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch. + +2020-06-08 Jan Beulich + + * config/tc-i386.c (bad_reg): New. + (check_VecOperations, i386_att_operand, i386_parse_name): Check + for it. + (check_register): New, broken out from ... + (parse_real_register): ... here. Call it. + (parse_register): Call it, and error upon failure. + * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l, + testsuite/gas/i386/x86-64-equ-bad.s, + testsuite/gas/i386/x86-64-equ-bad.l: New. + * testsuite/gas/i386/i386.exp: Run new tests. + +2020-06-06 Alan Modra + + * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10. + * doc/c-ppc.texi: Likewise. + +2020-06-06 Alan Modra + + * config/tc-ppc.c: Update throughout for reloc renaming. + +2020-06-05 Jose E. Marchesi + + * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning + stringop-overflow. + +2020-06-05 Nelson Chu + + * config/tc-riscv.c (explicit_csr): New static boolean. + Used to indicate CSR are explictly used. + (riscv_ip): Set explicit_csr to TRUE if any CSR is used. + (riscv_write_out_attrs): If we already have set elf priv + attributes, then generate them. Otherwise, don't generate + them when no CSR are used. + * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes. + * testsuite/gas/riscv/attribute-02.d: Likewise. + * testsuite/gas/riscv/attribute-03.d: Likewise. + * testsuite/gas/riscv/attribute-04.d: Likewise. + * testsuite/gas/riscv/attribute-05.d: Likewise. + * testsuite/gas/riscv/attribute-06.d: Likewise. + * testsuite/gas/riscv/attribute-07.d: Likewise. + * testsuite/gas/riscv/attribute-08.d: Likewise. + * testsuite/gas/riscv/attribute-09.d: Likewise. + * testsuite/gas/riscv/attribute-10.d: Likewise. + * testsuite/gas/riscv/attribute-unknown.d: Likewise. + * testsuite/gas/riscv/attribute-11.s: New testcase. + * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is + used, so we should output the ELF priv attributes. + * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is + used, so output the priv attributes according to the -mpriv-spec. + * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't + used, so ignore the -mpriv-spec setting. + +2020-06-04 H.J. Lu + + * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to + cgen_get_insn_value. + * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass + endianness to cgen_get_insn_value and cgen_put_insn_value. + +2020-06-04 Jose E. Marchesi + + * config/tc-bpf.c (md_apply_fix): Simplify and avoid using + cgen_put_insn_value. + +2020-06-04 Jose E. Marchesi + + * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to + bpf_cgen_cpu_open. + (md_assemble): Remove no longer needed hack. + +2020-06-04 Jose E. Marchesi + + * cgen.c (gas_cgen_finish_insn): Pass the endianness to + cgen_put_insn_value. + (gas_cgen_md_apply_fix): Likewise. + (gas_cgen_md_apply_fix): Likewise. + * config/tc-bpf.c (md_apply_fix): Pass data endianness to + cgen_put_insn_value. + * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to + cgen_put_insn_value. + +2020-06-04 Alan Modra + + * testsuite/config/default.exp: Remove global directive outside + proc body. + * testsuite/gas/mep/complex-relocs.exp: Likewise. + * testsuite/gas/microblaze/relax_size.exp: Likewise. + * testsuite/gas/microblaze/reloc_sym.exp: Likewise. + * testsuite/gas/mt/relocs.exp: Likewise. + * testsuite/gas/rx/rx.exp: Likewise. + +2020-06-03 Stephen Casner + + * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe. + +2020-06-02 Frédéric Pétrot + Jim Wilson + + PR 26051 + * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using + simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B + formats using simm12(rs1). Correct SB and B to use rs1 and rs2. + Move B before SB. Move J before UJ. + +2020-06-01 Alex Coplan + + * write.c (relax_segment): Fix handling of negative offset when + relaxing an rs_org frag. + * testsuite/gas/aarch64/org-neg.d: New test. + * testsuite/gas/aarch64/org-neg.l: Error output for test. + * testsuite/gas/aarch64/org-neg.s: Input for test. + * testsuite/gas/arm/org-neg.d: New test. + * testsuite/gas/arm/org-neg.l: Error output for test. + * testsuite/gas/arm/org-neg.s: Input for test. + +2020-05-28 Stephen Casner + + Fix unexpected failures in gas testsuite for pdp11-aout target. + These are caused by the PDP11's mix of little-endian octets in + shorts but shorts in big endian order for long or quad. + + * config/tc-pdp11.c (md_number_to_chars): Implement .quad + * testsuite/gas/all/gas.exp: Select alternate test scripts for + pdp11, skip octa test completely. + * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s + * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order. + * testsuite/gas/all/cond-pdp11.l: Match different octet order. + +2020-05-28 Alex Coplan + + * frags.c (frag_grow): Fix comment. + +2020-05-27 Stephen Casner + + PR gas/26001 + * config/tc-pdp11.c (parse_reg): Distinguish register names from + symbols that begin with a register name. + * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols. + * testsuite/gas/pdp11/pr26001.s: Likewise. + * testsuite/gas/pdp11/pr26001.d: Likewise. + +2020-05-27 Simon Cook + + * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next + pointer when creating struct riscv_csr_extra. + +2020-05-26 H.J. Lu + + * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF. + * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF. + * testsuite/gas/i386/inval-avx512f.l: Updated. + +2020-05-26 Stefan Schulze Frielinghaus + + * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector + load/store instruction variants with alignment hints. + * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store + instruction variants with alignment hints. + +2020-05-26 H.J. Lu + + PR gas/26044 + * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X + instead of R_XGATE_PCREL_X. + (xgate_parse_operand): Replace R_XGATE_PCREL_X with + BFD_RELOC_XGATE_PCREL_X. + +2020-05-26 H.J. Lu + + PR gas/26044 + * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal + with &fragP->fr_literal[0]. + +2020-05-26 H.J. Lu + + PR gas/26044 + * config/tc-vax.c (md_estimate_size_before_relax): Replace + fragP->fr_literal with &fragP->fr_literal[0]. + (md_convert_frag): Likewise. + +2020-05-26 H.J. Lu + + PR gas/26044 + * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal + with &fragP->fr_literal[0]. + +2020-05-26 H.J. Lu + + PR gas/26044 + * config/tc-crx.c (getreg_image): Change argument type to int. + (md_convert_frag): Replace fragP->fr_literal with + &fragP->fr_literal[0]. + +2020-05-26 H.J. Lu + + PR gas/26044 + * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping + sprintf with memmove. + +2020-05-25 H.J. Lu + + * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal + with &fragP->fr_literal[0]. + +2020-05-25 H.J. Lu + + PR gas/26041 + * config/tc-cr16.c (md_assemble): Use memmove to concatenate + 2 overlapping strings. + +2020-05-25 H.J. Lu + + * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal + with &fragP->fr_literal[0]. + +2020-05-25 H.J. Lu + + * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal + with &fragp->fr_literal[0]. + * config/tc-microblaze.c (md_apply_fix): Likewise. + * config/tc-sh.c (md_convert_frag): Likewise. + +2020-05-24 Jim Wilson + + PR 26025 + * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const + asection to segT. New locals seg and subseg. Call subseg_set before + fix_new_exp. Call subseg_set after loop to restore original values. + +2020-05-21 Alan Modra + + * atof-generic.c: Replace "if (x) free (x)" with "free (x)" + throughout. + * config/obj-elf.c: Likewise. + * config/tc-aarch64.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-nios2.c: Likewise. + * config/tc-tic30.c: Likewise. + * ecoff.c: Likewise. + * read.c: Likewise. + * stabs.c: Likewise. + * symbols.c: Likewise. + * testsuite/gas/all/test-gen.c: Likewise. + +2020-05-20 Nelson Chu + + * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated. + * config/tc-riscv.c (default_arch_with_ext, default_isa_spec): + Static variables which are used to set the ISA extensions. You can + use -march (or ELF build attributes) and -misa-spec to set them, + respectively. + (ext_version_hash): The hash table used to handle the extensions + with versions. + (init_ext_version_hash): Initialize the ext_version_hash according + to riscv_ext_version_table. + (riscv_get_default_ext_version): The callback function of + riscv_parse_subset_t. According to the choosed ISA spec, + get the default version for the specific extension. + (riscv_set_arch): Set the callback function. + (enum options, struct option md_longopts): Add new option -misa-spec. + (md_parse_option): Do not call riscv_set_arch for -march. We will + call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class + to set default_isa_spec class. + (riscv_after_parse_args): Call init_ext_version_hash to initialize the + ext_version_hash, and then call riscv_set_arch to set the architecture + with versions according to default_arch_with_ext. + * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for + x extensions. + * testsuite/gas/riscv/attribute-03.d: Likewise. + * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we + already set it's version to 2p1 by march, so no need to use the default + 2p2 version. For m-ext, we do not set the version by -march and ELF arch + attribute, so set the default 2p0 to it. For zicsr, it is not defined in + ISA spec 2p2, so set 0p0 to it. + * testsuite/gas/riscv/attribute-10.d: New testcase. The version of + zicsr is 2p0 according to ISA spec 20191213. + * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT) + (DEFAULT_RISCV_ISA_SPEC): Default configure option settings. + You can set them by configure options --with-arch and + --with-isa-spec, respectively. + (riscv_set_default_isa_spec): New function used to set the + default ISA spec. + (md_parse_option): Call riscv_set_default_isa_spec rather than + call riscv_get_isa_spec_class directly. + (riscv_after_parse_args): If the -isa-spec is not set, then we + set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by + calling riscv_set_default_isa_spec. + * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since + the --with-isa-spec may be set to different ISA spec. + * testsuite/gas/riscv/attribute-02.d: Likewise. + * testsuite/gas/riscv/attribute-03.d: Likewise. + * testsuite/gas/riscv/attribute-04.d: Likewise. + * testsuite/gas/riscv/attribute-05.d: Likewise. + * testsuite/gas/riscv/attribute-06.d: Likewise. + * testsuite/gas/riscv/attribute-07.d: Likewise. + * configure.ac: Add configure options, --with-arch and + --with-isa-spec. + * configure: Regenerated. + * config.in: Regenerated. + * config/tc-riscv.c (default_priv_spec): Static variable which is + used to check if the CSR is valid for the chosen privilege spec. You + can use -mpriv-spec to set it. + (enum reg_class): We now get the CSR address from csr_extra_hash rather + than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX. + (riscv_init_csr_hashes): Only need to initialize one hash table + csr_extra_hash. + (riscv_csr_class_check): Change the return type to void. Don't check + the ISA dependency if -mcsr-check isn't set. + (riscv_csr_version_check): New function. Check and find the CSR address + from csr_extra_hash, according to default_priv_spec. Report warning + for the invalid CSR if -mcsr-check is set. + (reg_csr_lookup_internal): Updated. + (reg_lookup_internal): Likewise. + (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed. + (enum options, struct option md_longopts): Add new GAS option -mpriv-spec. + (md_parse_option): Call riscv_set_default_priv_version to set + default_priv_spec. + (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default + privilege spec to the newest one. + (enum riscv_csr_class, struct riscv_csr_extra): Move them to + include/opcode/riscv.h. + * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want + to check the ISA dependency for CSR, so fix the spec version by adding + -mpriv-spec=1.11. + * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some + version warnings for the test case. + * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise. + * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise. + * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise. + * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case. + Check whether the CSR is valid when privilege version 1.9 is choosed. + * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case. + Check whether the CSR is valid when privilege version 1.9.1 is choosed. + * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case. + Check whether the CSR is valid when privilege version 1.10 is choosed. + * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case. + Check whether the CSR is valid when privilege version 1.11 is choosed. + * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise. + * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option + setting. You can set it by configure option --with-priv-spec. + (riscv_set_default_priv_spec): New function used to set the default + privilege spec. + (md_parse_option): Call riscv_set_default_priv_spec rather than + call riscv_get_priv_spec_class directly. + (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the + default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by + calling riscv_set_default_priv_spec. + * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since + the --with-priv-spec may be set to different privilege spec. + * testsuite/gas/riscv/priv-reg.d: Likewise. + * configure.ac: Add configure option --with-priv-spec. + * configure: Regenerated. + * config.in: Regenerated. + * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to + explicit_attr. Set it to TRUE if any ELF attribute is found. + (riscv_set_default_priv_spec): Try to set the default_priv_spec if + the priv attributes are set. + (md_assemble): Set the default_priv_spec according to the priv + attributes when we start to assemble instruction. + (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to + riscv_write_out_attrs. Update the arch and priv attributes. If we + don't set the corresponding ELF attributes, then try to output the + default ones. + (riscv_set_public_attributes): If any ELF attribute or -march-attr + options is set (explicit_attr is TRUE), then call riscv_write_out_attrs + to update the arch and priv attributes. + (s_riscv_attribute): Make sure all arch and priv attributes are set + before any instruction. + * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any + ELF attribute or -march-attr is set. If the priv attributes are not + set, then try to update them by the default setting (-mpriv-spec or + --with-priv-spec). + * testsuite/gas/riscv/attribute-02.d: Likewise. + * testsuite/gas/riscv/attribute-03.d: Likewise. + * testsuite/gas/riscv/attribute-04.d: Likewise. + * testsuite/gas/riscv/attribute-06.d: Likewise. + * testsuite/gas/riscv/attribute-07.d: Likewise. + * testsuite/gas/riscv/attribute-08.d: Likewise. + * testsuite/gas/riscv/attribute-09.d: Likewise. + * testsuite/gas/riscv/attribute-10.d: Likewise. + * testsuite/gas/riscv/attribute-unknown.d: Likewise. + * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec + set by priv attributes must be supported. + * testsuite/gas/riscv/attribute-05.s: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated + priv attributes according to the -mpriv-spec option. + * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise. + * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise. + * testsuite/gas/riscv/priv-reg.d: Removed. + * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the + CSR according to the priv spec 1.9. + * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the + CSR according to the priv spec 1.9.1. + * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the + CSR according to the priv spec 1.10. + * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the + CSR according to the priv spec 1.11. + * config/tc-riscv.c (md_show_usage): Add descriptions about + the new GAS options. + * doc/c-riscv.texi: Likewise. + +2020-05-19 Peter Bergner + + * testsuite/gas/ppc/power9.s : Add tests. + * testsuite/gas/ppc/power9.d: Likewise. + * testsuite/gas/ppc/power10.s : Add tests. + * testsuite/gas/ppc/power10.d: Likewise. + +2020-05-19 Alexander Fedotov + + PR 25992 + * config/tc-arm.c : Add arm_ext_v8r feature. + (it_fsm_post_encode): Check arm_ext_v8r feature. + (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature. + +2020-05-19 Alan Modra + + * write.c (write_contents): Use bfd_get_filename rather than + accessing bfd->filename directly. Use bfd_section_name rather + than accessing section->name directly. + +2020-05-19 Alan Modra + + * symbols.c (local_symbol_make): Init all of lsy_flags. + +2020-05-18 Alan Modra + + * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK + before looking at add_symbol->sy_flags. + +2020-05-18 Hongtao Liu + + * config/tc-i386.c: Not handle lret/iret. + * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase. + * testsuite/gas/i386/lfence-ret-b.d: Ditto. + * testsuite/gas/i386/lfence-ret-c.d: Ditto. + * testsuite/gas/i386/lfence-ret-d.d: Ditto. + * testsuite/gas/i386/lfence-ret.s: Ditto. + * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto. + * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto. + * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto. + * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto. + * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto. + * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto. + * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted. + +2020-05-15 Alan Modra + Alex Coplan + + * symbols.c (struct local_symbol): Update comment. + (resolve_symbol_value): For resolved symbols equated to other + symbols, verify that the referenced symbol is not a local_symbol + before accessing sy_value. Don't leave symbol loops during + finalize_syms resolution. + * testsuite/gas/all/assign-bad-recursive.d: New test. + * testsuite/gas/all/assign-bad-recursive.l: Error output for test. + * testsuite/gas/all/assign-bad-recursive.s: Assembly for test. + * testsuite/gas/all/gas.exp: Run it. + +2020-05-14 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/scalarquad.d, + * testsuite/gas/ppc/scalarquad.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/rightmost.d, + * testsuite/gas/ppc/rightmost.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/xvtlsbb.d, + * testsuite/gas/ppc/xvtlsbb.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/stringop.d, + * testsuite/gas/ppc/stringop.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Peter Bergner + + * testsuite/gas/ppc/set_bool.d, + * testsuite/gas/ppc/set_bool.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/bitmanip.d, + * testsuite/gas/ppc/bitmanip.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/genpcv.d, + * testsuite/gas/ppc/genpcv.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/maskmanip.d, + * testsuite/gas/ppc/maskmanip.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + Peter Bergner + + * config/tc-ppc.c (pre_defined_registers): Add accumulators. + (md_assemble): Check acc specified in correct operand. + * testsuite/gas/ppc/outerprod.d, + * testsuite/gas/ppc/outerprod.s, + * testsuite/gas/ppc/vsx4.d, + * testsuite/gas/ppc/vsx4.s: New tests. + * testsuite/gas/ppc/ppc.exp: Run them. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/simd_perm.d, + * testsuite/gas/ppc/simd_perm.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/int128.d, + * testsuite/gas/ppc/int128.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/vsx_32byte.d, + * testsuite/gas/ppc/vsx_32byte.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * testsuite/gas/ppc/vec_mul.s, + * testsuite/gas/ppc/vec_mul.d: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Peter Bergner + + * testsuite/gas/ppc/byte_rev.d, + * testsuite/gas/ppc/byte_rev.s: New test. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Peter Bergner + + * testsuite/gas/ppc/power10.d: Add paste. tests. + * testsuite/gas/ppc/power10.s: Likewise. + +2020-05-11 Peter Bergner + + * testsuite/gas/ppc/power10.s: New test. + * testsuite/gas/ppc/power10.d: Likewise. + * testsuite/gas/ppc/ppc.exp: Run it. + +2020-05-11 Alan Modra + + * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10 + renaming. + * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in + place of -mfuture/-Mfuture. + * testsuite/gas/ppc/prefix-pcrel.d: Likewise. + * testsuite/gas/ppc/prefix-reloc.d: Likewise. + +2020-05-06 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2020-05-06 Nick Clifton + + PR 25927 + * doc/as.texi (Preprocessing): Replace cross reference to not + existant document with a URL to the equivalent page in the GCC + manual. + +2020-05-05 Nick Clifton + + * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the + construction of a DWARF-5 directory name table. + * testsuite/gas/elf/pr25917.d: Update expected output. + +2020-05-05 Gunther Nikl + + * config/tc-rx.c (elf_flags): Initialize for non-linux targets. + (md_parse_option): Remove initialization of elf_flags. + +2020-05-04 Andre Vieira + + PR gas/25863 + * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul. + * testsuite/gas/arm/mve-scalar-vmult-it.d: New test. + * testsuite/gas/arm/mve-scalar-vmult-it.s: New test. + +2020-05-04 Nick Clifton + + PR 25917 + * dwarf2dbg.c (out_dir_and_file_list): Check for the directory + table's existence before looking at its entries. + Also do not emit a default directory entry if there are no + directories in use. + + * testsuite/gas/elf/pr25917.s: New test source file. + * testsuite/gas/elf/pr25917.d: New test driver. + * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test. + +2020-04-30 Alex Coplan + + * config/tc-aarch64.c (fix_insn): Implement for + AARCH64_OPND_UNDEFINED. + (parse_operands): Implement for AARCH64_OPND_UNDEFINED. + * testsuite/gas/aarch64/udf.s: New. + * testsuite/gas/aarch64/udf.d: New. + * testsuite/gas/aarch64/udf-invalid.s: New. + * testsuite/gas/aarch64/udf-invalid.l: New. + * testsuite/gas/aarch64/udf-invalid.d: New. + +2020-04-30 Yoshinori Sato + + * config/tc-rx.c (elf_flags): Reset default value. + (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI. + +2020-04-29 Max Filippov + + * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0 + if it's not defined. + (microarch_earliest): New static variable. + (xg_translate_idioms): Translate "simcall" to "simcall 0" when + simcall opcode has mandatory parameter. + (xg_init_global_config): Initialize microarch_earliest. + +2020-04-29 Nick Clifton + + PR 22699 + * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to + IMM0_8S and add support for IMM0_8U. + * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an + unsigned 8-bit immediate. + * testsuite/gas/sh/sh4a.d: Extended expected disassembly. + * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly. + +2020-04-27 Tamar Christina + + * NEWS: Add news entry for big-obj. + * config/tc-i386.c (i386_target_format): Support new format. + * doc/c-i386.texi: Add i386 support. + * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific. + * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well. + +2020-04-27 Nick Clifton + + PR 25878 + * dwarf2dbg.c (struct file_entry): Add auto_assigned field. + (assign_file_to_slot): New function. Fills in an entry in the + files table. + (allocate_filenum): Use new function. + (allocate_filename_to_slot): Use new function. If the specified + slot entry is already in use, but was chosen automatically then + reassign the automatic entry. + +2020-04-26 Hongtao Liu + + PR ld/25861 + * config/tc-xtensa.c (md_apply_fix): Replace + BFD_RELOC_XTENSA_DIFF{8,16,32} generation with + BFD_RELOC_XTENSA_PDIFF{8,16,32} and + BFD_RELOC_XTENSA_NDIFF{8,16,32} generation. + * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16 + with BFD_RELOC_XTENSA_PDIFF16 in the expected output. + +2020-04-22 Alan Modra + + * config/obj-elf.c (elf_frob_symbol): Unconditionally remove + symbol for ".symver .. remove". + * doc/as.texi (.symver): Update. + * testsuite/gas/symver/symver11.s: Make foo weak. + * testsuite/gas/symver/symver11.d: Expect an error. + * testsuite/gas/symver/symver7.d: Allow other random symbols. + +2020-04-21 H.J. Lu + + * testsuite/gas/symver/symver11.s: Add ".balign 8". + +2020-04-21 Andreas Schwab + + PR 25848 + * testsuite/gas/m68k/operands.s: Add tests for cmpi. + * testsuite/gas/m68k/operands.d: Update. + * testsuite/gas/m68k/op68000.d: Update for new error messages. + +2020-04-21 Tamar Christina + + PR binutils/24753 + * testsuite/gas/arm/pr24753.d: New test. + * testsuite/gas/arm/pr24753.s: New test. + +2020-04-21 H.J. Lu + + PR gas/23840 + PR gas/25295 + * NEWS: Mention .symver extension. + * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New + function. + (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to + add a version name. Add local, hidden and remove visibility + support. + (elf_frob_symbol): Handle the list of version names. Update the + original symbol to local, hidden or remove it from the symbol + table. + (elf_frob_file_before_adjust): Handle the list of version names. + * config/obj-elf.h (elf_visibility): New. + (elf_versioned_name_list): Likewise. + (elf_obj_sy): Change local to bitfield. Add rename, bad_version + and visibility. Change versioned_name pointer to struct + elf_versioned_name_list. + * doc/as.texi: Update .symver directive. + * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more + error checking tests. + * testsuite/gas/symver/symver6.d: New file. + * testsuite/gas/symver/symver7.d: Likewise. + * testsuite/gas/symver/symver7.s: Likewise. + * testsuite/gas/symver/symver8.d: Likewise. + * testsuite/gas/symver/symver8.s: Likewise. + * testsuite/gas/symver/symver9.s: Likewise. + * testsuite/gas/symver/symver9a.d: Likewise. + * testsuite/gas/symver/symver9b.d: Likewise. + * testsuite/gas/symver/symver10.s: Likewise. + * testsuite/gas/symver/symver10a.d: Likewise. + * testsuite/gas/symver/symver10b.d: Likewise. + * testsuite/gas/symver/symver11.d: Likewise. + * testsuite/gas/symver/symver11.s: Likewise. + * testsuite/gas/symver/symver12.d: Likewise. + * testsuite/gas/symver/symver12.s: Likewise. + * testsuite/gas/symver/symver13.d: Likewise. + * testsuite/gas/symver/symver13.s: Likewise. + * testsuite/gas/symver/symver14.d: Likewise. + * testsuite/gas/symver/symver14.l: Likewise. + * testsuite/gas/symver/symver15.d: Likewise. + * testsuite/gas/symver/symver15.l: Likewise. + * testsuite/gas/symver/symver6.l: Removed. + * testsuite/gas/symver/symver6.s: Updated. + +2020-04-20 Sudakshina Das + + * config/tc-aarch64.c (parse_barrier_psb): Update error messages + to include TSB. + * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests. + * testsuite/gas/aarch64/system-2.s: Add new tsb tests. + * testsuite/gas/aarch64/system.d: Update. + +2020-04-20 Sudakshina Das + + * testsuite/gas/aarch64/bti.d: Update -march option. + * testsuite/gas/aarch64/illegal-bti.d: Remove. + * testsuite/gas/aarch64/illegal-bti.l: Remove. + * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb. + * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb. + +2020-04-17 Alan Modra + + * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot. + +2020-04-16 Gagan Singh Sidhu + Nick Clifton + + PR 25803 + * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS + targets. + * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip + for the type-2 test. + * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS + targets running this test. + +2020-02-16 David Faust + + * testsuite/gas/bpf/bpf.exp: Run jump32 tests. + * testsuite/gas/bpf/jump32.s: New file. + * testsuite/gas/bpf/jump32.d: Likewise. + +2020-04-08 H.J. Lu + + * doc/c-i386.texi: Correct -mlfence-before-indirect-branch= + documentation. + +2020-04-08 Gunther Nikl + + * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define. + (md_pcrel_from): Remove prototytpe. + * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate + define. + (md_pcrel_from_section): Remove duplicate prototype. + * tc.h (md_pcrel_from_section): Add prototype. + * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype. + * config/tc-arc.h (md_pcrel_from_section): Likewise. + * config/tc-arm.h (md_pcrel_from_section): Likewise. + * config/tc-avr.h (md_pcrel_from_section): Likewise. + * config/tc-bfin.h (md_pcrel_from_section): Likewise. + * config/tc-bpf.h (md_pcrel_from_section): Likewise. + * config/tc-csky.h (md_pcrel_from_section): Likewise. + * config/tc-d10v.h (md_pcrel_from_section): Likewise. + * config/tc-d30v.h (md_pcrel_from_section): Likewise. + * config/tc-epiphany.h (md_pcrel_from_section): Likewise. + * config/tc-fr30.h (md_pcrel_from_section): Likewise. + * config/tc-frv.h (md_pcrel_from_section): Likewise. + * config/tc-iq2000.h (md_pcrel_from_section): Likewise. + * config/tc-lm32.h (md_pcrel_from_section): Likewise. + * config/tc-m32c.h (md_pcrel_from_section): Likewise. + * config/tc-m32r.h (md_pcrel_from_section): Likewise. + * config/tc-mcore.h (md_pcrel_from_section): Likewise. + * config/tc-mep.h (md_pcrel_from_section): Likewise. + * config/tc-metag.h (md_pcrel_from_section): Likewise. + * config/tc-microblaze.h (md_pcrel_from_section): Likewise. + * config/tc-mmix.h (md_pcrel_from_section): Likewise. + * config/tc-moxie.h (md_pcrel_from_section): Likewise. + * config/tc-msp430.h (md_pcrel_from_section): Likewise. + * config/tc-mt.h (md_pcrel_from_section): Likewise. + * config/tc-or1k.h (md_pcrel_from_section): Likewise. + * config/tc-ppc.h (md_pcrel_from_section): Likewise. + * config/tc-rl78.h (md_pcrel_from_section): Likewise. + * config/tc-rx.h (md_pcrel_from_section): Likewise. + * config/tc-s390.h (md_pcrel_from_section): Likewise. + * config/tc-sh.h (md_pcrel_from_section): Likewise. + * config/tc-xc16x.h (md_pcrel_from_section): Likewise. + * config/tc-xstormy16.h (md_pcrel_from_section): Likewise. + * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol, + md_show_usage, md_convert_frag, md_operand, md_number_to_chars, + md_estimate_size_before_relax, md_section_align, tc_gen_reloc, + md_apply_fix3): Delete prototypes. + +2020-04-07 H.J. Lu + + * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK + instructions. + +2020-04-07 H.J. Lu + + * doc/c-z80.texi: Fix @xref warnings. + +2020-04-07 Lili Cui + + * config/tc-i386.c (cpu_arch): Add .TSXLDTRK. + (cpu_noarch): Likewise. + * doc/c-i386.texi: Document TSXLDTRK. + * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests. + * testsuite/gas/i386/tsxldtrk.d: Likewise. + * testsuite/gas/i386/tsxldtrk.s: Likewise. + * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise. + +2020-04-02 Lili Cui + + * config/tc-i386.c (cpu_arch): Add .serialize. + (cpu_noarch): Likewise. + * doc/c-i386.texi: Document serialize. + * testsuite/gas/i386/i386.exp: Run serialize tests + * testsuite/gas/i386/serialize.d: Likewise. + * testsuite/gas/i386/x86-64-serialize.d: Likewise. + * testsuite/gas/i386/serialize.s: Likewise. + +2020-04-02 Rainer Orth + + * testsuite/gas/elf/section12a.d: Use notarget instead of xfail. + * testsuite/gas/elf/section12b.d: Likewise. + * testsuite/gas/elf/section16a.d: Likewise. + * testsuite/gas/elf/section16b.d: Likewise. + +2020-04-02 Gunther Nikl + + * config/tc-m68k.c (m68k_ip): Fix range check for index register + with a suppressed address register. + +2020-04-01 H.J. Lu + + PR gas/25756 + * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New. + * testsuite/gas/i386/localpic.s: Add a test for relocation + against local absolute symbol. + * testsuite/gas/i386/x86-64-localpic.s: Likewise. + * testsuite/gas/i386/localpic.d: Updated. + * testsuite/gas/i386/x86-64-localpic.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise. + +2020-04-01 Rainer Orth + + PR gas/25732 + * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file. + * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file. + * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to + testsuite/gas/i386/x86-64-jump.d. + * testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d: + Incorporate changes to + gas/testsuite/gas/i386/x86-64-mpx-branch-1.d. + * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate + changes to testsuite/gas/i386/x86-64-mpx-branch-2.d. + * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*. + * testsuite/gas/i386/x86-64-branch-3.d: Likewise. + +2020-03-31 Maciej W. Rozycki + + PR 25611 + PR 25614 + * dwarf2dbg.c: Do not include "bignum.h". + +2020-03-30 Nelson Chu + + * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo. + * testsuite/gas/riscv/alias-csr.s: Likewise. + * testsuite/gas/riscv/no-aliases-csr.d: Move this + to priv-reg-pseudo-noalias. + * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent. + * testsuite/gas/riscv/bad-csr.l: Likewise. + * testsuite/gas/riscv/bad-csr.s: Likewise. + * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg. + * testsuite/gas/riscv/satp.s: Likewise. + * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo + csr instruction, including alias-csr testcase. + * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise. + * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all + pseudo instruction with objdump -Mno-aliases. + * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase. + * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise. + * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11. + * testsuite/gas/riscv/priv-reg.s: Likewise. + * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise. + * testsuite/gas/riscv/csr-dw-regnums.d: Likewise. + * testsuite/gas/riscv/csr-dw-regnums.s: Likewise. + +2020-03-25 J.W. Jagersma + + * config/obj-coff.c (obj_coff_section): Set the bss flag on + sections with the "b" attribute. + +2020-03-22 Alan Modra + + * testsuite/gas/s12z/truncated.d: Update expected output. + +2020-03-17 Sergey Belyashov + + PR 25690 + * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops. + * doc/c-z80.texi: Update documentation. + +2020-03-17 Sergey Belyashov + + PR 25641 + PR 25668 + PR 25633 + Fix disassembling ED+A4/AC/B4/BC opcodes. + Fix assembling lines containing colonless label and instruction + with first operand inside parentheses. + Fix registration of unsupported by target CPU registers. + * config/tc-z80.c: See above. + * config/tc-z80.h: See above. + * testsuite/gas/z80/colonless.d: Update test. + * testsuite/gas/z80/colonless.s: Likewise. + * testsuite/gas/z80/ez80_adl_all.d: Likewise. + * testsuite/gas/z80/ez80_unsup_regs.d: Likewise. + * testsuite/gas/z80/ez80_z80_all.d: Likewise. + * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise. + * testsuite/gas/z80/r800_unsup_regs.d: Likewise. + * testsuite/gas/z80/unsup_regs.s: Likewise. + * testsuite/gas/z80/z180_unsup_regs.d: Likewise. + * testsuite/gas/z80/z80.exp: Likewise. + * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise. + * testsuite/gas/z80/z80_unsup_regs.d: Likewise. + * testsuite/gas/z80/z80n_unsup_regs.d: Likewise. + +2020-03-13 Andre Vieira + + PR 25660 + * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ. + (parse_operands): Handle new operand codes. + (do_neon_dyadic_long): Make shape check accept the scalar variants. + (asm_opcode_insns): Fix operand codes for vaddl and vsubl. + * testsuite/gas/arm/mve-vaddsub-it.s: New test. + * testsuite/gas/arm/mve-vaddsub-it.d: New test. + * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test. + * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test. + * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test. + * testsuite/gas/arm/nomve-vaddsub-it.d: New test. + +2020-03-11 H.J. Lu + + * NEWS: Mention x86 assembler options for CVE-2020-0551. + +2020-03-11 H.J. Lu + + * testsuite/gas/i386/i386.exp: Run new tests. + * testsuite/gas/i386/lfence-byte.d: New file. + * testsuite/gas/i386/lfence-byte.e: Likewise. + * testsuite/gas/i386/lfence-byte.s: Likewise. + * testsuite/gas/i386/lfence-indbr-a.d: Likewise. + * testsuite/gas/i386/lfence-indbr-b.d: Likewise. + * testsuite/gas/i386/lfence-indbr-c.d: Likewise. + * testsuite/gas/i386/lfence-indbr.e: Likewise. + * testsuite/gas/i386/lfence-indbr.s: Likewise. + * testsuite/gas/i386/lfence-load.d: Likewise. + * testsuite/gas/i386/lfence-load.s: Likewise. + * testsuite/gas/i386/lfence-ret-a.d: Likewise. + * testsuite/gas/i386/lfence-ret-b.d: Likewise. + * testsuite/gas/i386/lfence-ret.s: Likewise. + * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise. + * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise. + * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise. + * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise. + * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise. + * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise. + * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise. + * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise. + * testsuite/gas/i386/x86-64-lfence-load.d: Likewise. + * testsuite/gas/i386/x86-64-lfence-load.s: Likewise. + * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise. + * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise. + +2020-03-11 H.J. Lu + + * config/tc-i386.c (lfence_after_load): New. + (lfence_before_indirect_branch_kind): New. + (lfence_before_indirect_branch): New. + (lfence_before_ret_kind): New. + (lfence_before_ret): New. + (last_insn): New. + (load_insn_p): New. + (insert_lfence_after): New. + (insert_lfence_before): New. + (md_assemble): Call insert_lfence_before and insert_lfence_after. + Set last_insn. + (OPTION_MLFENCE_AFTER_LOAD): New. + (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New. + (OPTION_MLFENCE_BEFORE_RET): New. + (md_longopts): Add -mlfence-after-load=, + -mlfence-before-indirect-branch= and -mlfence-before-ret=. + (md_parse_option): Handle -mlfence-after-load=, + -mlfence-before-indirect-branch= and -mlfence-before-ret=. + (md_show_usage): Display -mlfence-after-load=, + -mlfence-before-indirect-branch= and -mlfence-before-ret=. + (i386_cons_align): New. + * config/tc-i386.h (i386_cons_align): New. + (md_cons_align): New. + * doc/c-i386.texi: Document -mlfence-after-load=, + -mlfence-before-indirect-branch= and -mlfence-before-ret=. + +2020-03-11 Nick Clifton + + PR 25611 + PR 25614 + * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1. + (DWARF2_FILE_SIZE_NAME): Default to -1. + (DWARF2_LINE_VERSION): Default to the current dwarf level or 3, + whichever is higher. + (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1. + (NUM_MD5_BYTES): Define. + (struct file entry): Add md5 field. + (get_filenum): Delete and replace with... + (get_basename): New function. + (get_directory_table_entry): New function. + (allocate_filenum): New function. + (allocate_filename_to_slot): New function. + (dwarf2_where): Use new functions. + (dwarf2_directive_filename): Add support for extended .file + pseudo-op. + (dwarf2_directive_loc): Allow the use of file number zero with + DWARF 5 or higher. + (out_file_list): Rename to... + (out_dir_and_file_list): Add DWARF 5 support. + (out_debug_line): Emit extra values into the section header for + DWARF 5. + (out_debug_str): Allow for file 0 to be used with DWARF 5. + * doc/as.texi (.file): Update the description of this pseudo-op. + * testsuite/gas/elf-dwarf-5-file0.s: Add more lines. + * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output. + * testsuite/gas/lns/lns-diag-1.l: Update expected error message. + * NEWS: Mention the new feature. + +2020-03-10 Alan Modra + + * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions + to avoid signed overflow. + * config/tc-mcore.c (md_assemble): Likewise. + * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise. + * config/tc-nds32.c (SET_ADDEND): Likewise. + * config/tc-nios2.c (nios2_assemble_arg_R): Likewise. + +2020-03-09 Jan Beulich + + * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos. + * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d, + testsuite/gas/i386/avx-intel.d: Adjust expectations. + +2020-03-07 Alan Modra + + * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in + first column. + +2020-03-06 Nick Clifton + + PR 25614 + * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of + 0 if the dwarf_level is 5 or more. Complain if a filename follows + a file 0. + * testsuite/gas/elf/dwarf-5-file0.s: New test. + * testsuite/gas/elf/dwarf-5-file0.d: New test driver. + * testsuite/gas/elf/elf.exp: Run the new test. + + PR 25612 + * config/tc-ia64.h (DWARF2_VERISION): Fix typo. + * doc/as.texi: Fix another typo. + +2020-03-06 Nick Clifton + + PR 25612 + * as.c (dwarf_level): Define. + (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5. + (parse_args): Add support for the new options. + as.h (dwarf_level): Prototype. + * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version + value. + * config/tc-ia64.h (DWARF2_VERISION): Update definition. + (DWARF2_LINE_VERSION): Remove definition. + * doc/as.texi: Document the new options. + +2020-03-06 Nick Clifton + + PR 25572 + * as.c (main): Allow matching input and outputs when they are + not regular files. + +2020-03-06 Jan Beulich + + * config/tc-i386.c (match_mem_size): Generalize broadcast special + casing. + (check_VecOperands): Zap xmmword/ymmword/zmmword when more than + one of byte/word/dword/qword is set alongside a SIMD register in + a template's operand. + +2020-03-06 Jan Beulich + + * config/tc-i386.c (match_template): Extend code in logic + rejecting certain suffixes in certain modes to also cover mask + register use and VecSIB. Drop special casing of broadcast. Skip + immediates in the check. + +2020-03-06 Jan Beulich + + * config/tc-i386.c (match_template): Fold duplicate code in + logic rejecting certain suffixes in certain modes. Drop + pointless "else". + +2020-03-06 Jan Beulich + + * config/tc-i386.c (process_suffix): Exlucde !vexw insns + alongside !norex64 ones. + * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR* + with both 32- and 64-bit GPR operands. + * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both + 32- and 64-bit GPR operands. + * testsuite/gas/i386/x86-64-avx512bw-intel.d, + testsuite/gas/i386/x86-64-avx512bw.d, + testsuite/gas/i386/x86-64-avx512f-intel.d, + testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations. + +2020-03-06 Jan Beulich + + * config/tc-i386.c (md_assemble): Drop use of rex64. + (process_suffix): For REX.W for 64-bit CRC32. + +2020-03-06 Jan Beulich + + * config/tc-i386.c (i386_addressing_mode): For 32-bit + addressing for MPX insns without base/index. + * testsuite/gas/i386/mpx-16bit.s, + * testsuite/gas/i386/mpx-16bit.d: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2020-03-06 Jan Beulich + + * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s, + testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s, + testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s, + testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s, + * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases + as well as a BSWAP one. + * testsuite/gas/i386/rdpid.s: Add 16-bit case. + * testsuite/gas/i386/sse2-16bit.s: Cover more insns. + * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d, + testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d, + testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d, + testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d, + testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d, + testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d, + testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d, + testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d, + testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d, + testsuite/gas/i386/vmx.d: Adjust expectations. + +2020-03-06 Jan Beulich + + * config/tc-i386.c (md_assemble): Also exclude tpause and umwait + from having their operands swapped. + * testsuite/gas/i386/waitpkg.s, + testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait + 3-operand cases as well as testing of 16-bit code generation. + * testsuite/gas/i386/waitpkg.d, + testsuite/gas/i386/waitpkg-intel.d, + testsuite/gas/i386/x86-64-waitpkg.d, + testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations. + +2020-03-04 Nelson Chu + + * config/tc-riscv.c (percent_op_utype): Support the modifier + %got_pcrel_hi. + * doc/c-riscv.texi: Add documentation. + * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new + modifier %got_pcrel_hi. + * testsuite/gas/riscv/no-relax-reloc.s: Likewise. + * testsuite/gas/riscv/relax-reloc.d: Likewise. + * testsuite/gas/riscv/relax-reloc.s: Likewise. + + * doc/c-riscv.texi (relocation modifiers): Add documentation. + (RISC-V-Formats): Update the section name from "Instruction Formats" + to "RISC-V Instruction Formats". + +2020-03-04 Alexandre Oliva + + * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is + detected in a section which does not have at least 4 byte + alignment. + * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive. + * testsuite/gas/arm/ldr-t.s: Likewise. + * testsuite/gas/arm/sp-pc-usage-t.s: Likewise. + * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of + disassembly, ignoring any NOPs that may have been inserted because + of section alignment. + * testsuite/gas/arm/ldr-t.d: Likewise. + +2020-03-04 Jan Beulich + + * config/tc-i386.c (cpu_arch): Add .sev_es entry. + * doc/c-i386.texi: Mention sev_es. + * testsuite/gas/i386/arch-13.s: Add SEV-ES case. + * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust + expectations. + * testsuite/gas/i386/arch-13-znver1.d, + testsuite/gas/i386/arch-13-znver2.d: Extend -march=. + +2020-03-03 H.J. Lu + + * config/tc-i386.c (match_template): Replace ignoresize and + defaultsize with mnemonicsize. + (process_suffix): Likewise. + +2020-03-03 Sergey Belyashov + + PR 25627 + * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of + instruction LD IY,(HL). + * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly. + * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction. + * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly. + * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction. + +2020-03-03 H.J. Lu + + PR gas/25622 + * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and + x86-64-default-suffix-avx. + * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss, + vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries. + * testsuite/gas/i386/noreg64.d: Updated. + * testsuite/gas/i386/noreg64.l: Likewise. + * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file. + * testsuite/gas/i386/x86-64-default-suffix.d: Likewise. + * testsuite/gas/i386/x86-64-default-suffix.s: Likewise. + +2020-03-03 Sergey Belyashov + + PR 25604 + * config/tc-z80.c (contains_register): Prevent an illegal memory + access when checking an expression for a register name. + +2020-03-03 Alan Modra + + * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips + support. + +2020-03-02 Alan Modra + + * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section. + * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata + and .sbss sections. + * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout. + (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section. + (s3_s_score_lcomm): Likewise. + * config/tc-score7.c: Similarly. + * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section. + +2020-02-28 YunQiang Su + + PR gas/25539 + * config/tc-mips.c (fix_loongson3_llsc): Compare label value + to handle multi-labels. + (has_label_name): New. + +2020-02-26 Matthew Malcomson + + * config/tc-arm.c (enum pred_instruction_type): Remove + NEUTRAL_IT_NO_VPT_INSN predication type. + (cxn_handle_predication): Modify to require condition suffixes. + (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases. + * testsuite/gas/arm/cde-scalar.s: Update test. + * testsuite/gas/arm/cde-warnings.l: Update test. + * testsuite/gas/arm/cde-warnings.s: Update test. + +2020-02-26 Alan Modra + + * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use + N_() on empty string. + +2020-02-26 Alan Modra + + * read.c (read_a_source_file): Call strncpy with length one + less than size of original_case_string. + +2020-02-26 Alan Modra + + * config/obj-elf.c: Indent labels correctly. + * config/obj-macho.c: Likewise. + * config/tc-aarch64.c: Likewise. + * config/tc-alpha.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-cr16.c: Likewise. + * config/tc-crx.c: Likewise. + * config/tc-frv.c: Likewise. + * config/tc-i386-intel.c: Likewise. + * config/tc-i386.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-mn10200.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-nds32.c: Likewise. + * config/tc-riscv.c: Likewise. + * config/tc-s12z.c: Likewise. + * config/tc-xtensa.c: Likewise. + * config/tc-z80.c: Likewise. + * read.c: Likewise. + * symbols.c: Likewise. + * write.c: Likewise. + +2020-02-20 Nelson Chu + + * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate + we are assembling instruction with CSR. Call riscv_csr_read_only_check + after parsing all arguments. + (enum csr_insn_type): New enum is used to classify the CSR instruction. + (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These + are used to check if we write a read-only CSR by the CSR instruction. + * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test + all CSR for the read-only CSR checking. + * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise. + * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test + all CSR instructions for the read-only CSR checking. + * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise. + * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise. + + * config/tc-riscv.c (struct riscv_set_options): New field csr_check. + (riscv_opts): Initialize it. + (reg_lookup_internal): Check the `riscv_opts.csr_check` + before doing the CSR checking. + (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK. + (md_longopts): Add mcsr-check and mno-csr-check. + (md_parse_option): Handle new enum option values. + (s_riscv_option): Handle new long options. + * doc/c-riscv.texi: Add description for the new .option and assembler + options. + * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable + the CSR checking. + * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise. + + * config/tc-riscv.c (csr_extra_hash): New. + (enum riscv_csr_class): New enum. Used to decide + whether or not this CSR is legal in the current ISA string. + (struct riscv_csr_extra): New structure to hold all extra information + of CSR. + (riscv_init_csr_hashes): New. According to the DECLARE_CSR and + DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash. + Call hash_reg_name to insert CSR address into reg_names_hash. + (reg_csr_lookup_internal, riscv_csr_class_check): New functions. + Decide whether the CSR is valid according to the csr_extra_hash. + (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs. + (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is + not a boolean. This is same as riscv_init_csr_hash, so keep the + consistent usage. + (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR. + * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option. + * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option. + * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source + file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the + f-ext CSR are not allowed. + * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. + * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The + source file is `priv-reg.s`, and the ISA is rv64if, so the + rv32-only CSR are not allowed. + * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise. + +2020-02-21 Alan Modra + + * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32. + (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs. + +2020-02-21 Alan Modra + + PR 25569 + * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop + on section size adjustment, instead perform another write if + exec header size is larger than section size. + +2020-02-19 Nelson Chu + + * doc/c-riscv.texi: Add the doc entries for -march-attr/ + -mno-arch-attr command line options. + +2020-02-19 Nelson Chu + + * testsuite/gas/riscv/c-add-addi.d: New testcase. + * testsuite/gas/riscv/c-add-addi.s: Likewise. + +2020-02-19 Sergey Belyashov + + PR 25576 + * config/tc-z80.c (md_parse_option): Do not use an underscore + prefix for local labels in SDCC compatability mode. + (z80_start_line_hook): Remove SDCC dollar label support. + * testsuite/gas/z80/sdcc.d: Update expected disassembly. + * testsuite/gas/z80/sdcc.s: Likewise. + +2020-02-19 Sergey Belyashov + + PR 25517 + * config/tc-z80.c: Add -march option. + * doc/as.texi: Update Z80 documentation. + * doc/c-z80.texi: Likewise. + * testsuite/gas/z80/ez80_adl_all.d: Update command line. + * testsuite/gas/z80/ez80_adl_suf.d: Likewise. + * testsuite/gas/z80/ez80_pref_dis.d: Likewise. + * testsuite/gas/z80/ez80_z80_all.d: Likewise. + * testsuite/gas/z80/ez80_z80_suf.d: Likewise. + * testsuite/gas/z80/gbz80_all.d: Likewise. + * testsuite/gas/z80/r800_extra.d: Likewise. + * testsuite/gas/z80/r800_ii8.d: Likewise. + * testsuite/gas/z80/r800_z80_doc.d: Likewise. + * testsuite/gas/z80/sdcc.d: Likewise. + * testsuite/gas/z80/z180.d: Likewise. + * testsuite/gas/z80/z180_z80_doc.d: Likewise. + * testsuite/gas/z80/z80_doc.d: Likewise. + * testsuite/gas/z80/z80_ii8.d: Likewise. + * testsuite/gas/z80/z80_in_f_c.d: Likewise. + * testsuite/gas/z80/z80_op_ii_ld.d: Likewise. + * testsuite/gas/z80/z80_out_c_0.d: Likewise. + * testsuite/gas/z80/z80_sli.d: Likewise. + * testsuite/gas/z80/z80n_all.d: Likewise. + * testsuite/gas/z80/z80n_reloc.d: Likewise. + +2020-02-19 H.J. Lu + + * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd + with GNU_PROPERTY_X86_FEATURE_2_MMX. + * testsuite/gas/i386/i386.exp: Run property-3 and + x86-64-property-3. + * testsuite/gas/i386/property-3.d: New file. + * testsuite/gas/i386/property-3.s: Likewise. + * testsuite/gas/i386/x86-64-property-3.d: Likewise. + +2020-02-17 H.J. Lu + + * config/tc-i386.c (cpu_arch): Add .popcnt. + * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt. + Add a tab before @samp{.sse4a}. + +2020-02-17 Jan Beulich + + * config/tc-i386.c (process_suffix): Don't try to guess a suffix + for AddrPrefixOpReg templates. Combine the two pieces of + addrprefixopreg handling. Reject 16-bit address reg in 64-bit + mode. + +2020-02-17 Jan Beulich + + PR gas/14439 + * config/tc-i386.c (md_assemble): Also suppress operand + swapping for MONITOR{,X} and MWAIT{,X}. + * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s: + Add Intel syntax monitor/mwait tests. + * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d: + Adjust expectations. + *testsuite/gas/i386/sse3-intel.d, + testsuite/gas/i386/x86-64-sse3-intel.d: New. + * testsuite/gas/i386/i386.exp: Run new tests. + +2020-02-17 Jan Beulich + + PR gas/6518 + * config/tc-i386.c (process_suffix): Re-work Intel-syntax + [XYZ]MMWord memory operand ambiguity recognition logic (largely + re-indentation). + * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps + cases. + * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16. + * testsuite/gas/i386/avx512dq-inval.l, + testsuite/gas/i386/inval-avx.l, + testsuite/gas/i386/inval-avx512f.l: Adjust expectations. + * testsuite/gas/i386/avx512vl-ambig.s, + testsuite/gas/i386/avx512vl-ambig.l: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2020-02-16 H.J. Lu + + * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore + nosse4. + * doc/c-i386.texi: Document sse4a and nosse4a. + +2020-02-14 H.J. Lu + + * doc/c-i386.texi: Remove the old movsx and movzx documentation + for AT&T syntax. + +2020-02-14 Jan Beulich + + PR gas/25438 + * config/tc-i386.c (md_assemble): Move movsx/movzx special + casing ... + (process_suffix): ... here. Consider just the first operand + initially. + (check_long_reg): Drop opcode 0x63 special case again. + * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s, + testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s: + Move ambiguous operand size tests ... + * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s, + testsuite/gas/i386/noreg64.s: ... here. + * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d + testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d, + testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d, + testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l, + testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d, + testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d, + testsuite/gas/i386/x86-64-movsxd.d, + testsuite/gas/i386/x86-64-movsxd-intel.d, + testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d: + Adjust expectations. + * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l, + testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l, + testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New. + * testsuite/gas/i386/i386.exp: Run new tests. + +2020-02-14 Jan Beulich + + * config/tc-i386.c (process_operands): Also skip segment + override prefix emission if it matches an already present one. + * testsuite/gas/i386/prefix32.s: Add double segment override + cases. + * testsuite/gas/i386/prefix32.l: Adjust expectations. + +2020-02-14 Jan Beulich + + * config/tc-i386.c (process_operands): Drop ineffectual segment + overrides when optimizing. + * testsuite/gas/i386/lea-optimize.d: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2020-02-14 Jan Beulich + + * config/tc-i386.c (process_operands): Also check insn prefix + for ineffectual segment override warning. Don't cover possible + VEX/EVEX encoded insns there. + * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d, + testsuite/gas/i386/lea.e: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2020-02-14 H.J. Lu + + PR gas/25438 + * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T + syntax. + +2020-02-13 Fangrui Song + H.J. Lu + + PR gas/25551 + * config/tc-i386.c (tc_i386_fix_adjustable): Don't check + BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32. + * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4. + * testsuite/gas/i386/relax-5.d: New file. + * testsuite/gas/i386/relax-5.s: Likewise. + * testsuite/gas/i386/x86-64-relax-4.d: Likewise. + * testsuite/gas/i386/x86-64-relax-4.s: Likewise. + +2020-02-13 Jan Beulich + + * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in + "nosse4" entry. + +2020-02-12 Jan Beulich + + * config/tc-i386.c (avx512): New (at file scope), moved from + (check_VecOperands): ... here. + (process_suffix): Add [XYZ]MMword operand size handling. + * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests. + * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS + tests. + * testsuite/gas/i386/avx512dq-inval.l, + testsuite/gas/i386/noavx512-2.l: Adjust expectations. + +2020-02-12 Jan Beulich + + PR gas/24546 + * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit + code only. + * config/tc-i386-intel.c (i386_intel_operand): Also handle + CALL/JMP in O_tbyte_ptr case. + * doc/c-i386.texi: Mention far call and full pointer load ISA + differences. + * testsuite/gas/i386/x86-64-branch-3.s, + testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases. + * testsuite/gas/i386/x86-64-branch-3.d, + testsuite/gas/i386/x86-64-intel64.d: Adjust expectations. + * testsuite/gas/i386/x86-64-branch-5.l, + testsuite/gas/i386/x86-64-branch-5.s: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2020-02-12 Jan Beulich + + PR gas/25438 + * config/tc-i386.c (REGISTER_WARNINGS): Delete. + (check_byte_reg): Skip only source operand of CRC32. Drop Non- + 64-bit-only warning. + (check_word_reg): Consistently error on mismatching register + size and suffix. + * testsuite/gas/i386/general.s: Replace dword GPR with word one + for movw. Replace suffix / GPR for orb. + * testsuite/gas/i386/inval.s: Add tests for movw with dword and + byte GPRs as well as ones for inb/outb with a word accumulator. + * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l, + testsuite/gas/i386/inval.l: Adjust expectations. + +2020-02-12 Jan Beulich + + * config/tc-i386.c (operand_type_register_match): Also fall + through initial two if()-s when the template allows for a GPR + operand. Adjust comment. + +2020-02-11 Jan Beulich + + (struct _i386_insn): New field "short_form". + (optimize_encoding): Drop setting of shortform field. + (process_suffix): Set i.short_form. Replace shortform use. + (process_operands): Replace shortform use. + +2020-02-11 Matthew Malcomson + + * config/tc-arm.c (vcx_handle_register_arguments): Remove `for` + loop initial declaration. + +2020-02-10 Matthew Malcomson + + * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for + instructions that can have 5 arguments. + (enum operand_parse_code): Add new operands. + (parse_operands): Account for new operands. + (S5): New macro. + (enum neon_shape_el): Introduce P suffixes for coprocessor. + (neon_select_shape): Account for P suffix. + (LOW1): Move macro to global position. + (HI4): Move macro to global position. + (vcx_assign_vec_d): New. + (vcx_assign_vec_m): New. + (vcx_assign_vec_n): New. + (enum vcx_reg_type): New. + (vcx_get_reg_type): New. + (vcx_size_pos): New. + (vcx_vec_pos): New. + (vcx_handle_shape): New. + (vcx_ensure_register_in_range): New. + (vcx_handle_register_arguments): New. + (vcx_handle_insn_block): New. + (vcx_handle_common_checks): New. + (do_vcx1): New. + (do_vcx2): New. + (do_vcx3): New. + * testsuite/gas/arm/cde-missing-fp.d: New test. + * testsuite/gas/arm/cde-missing-fp.l: New test. + * testsuite/gas/arm/cde-missing-mve.d: New test. + * testsuite/gas/arm/cde-missing-mve.l: New test. + * testsuite/gas/arm/cde-mve-or-neon.d: New test. + * testsuite/gas/arm/cde-mve-or-neon.s: New test. + * testsuite/gas/arm/cde-mve.s: New test. + * testsuite/gas/arm/cde-warnings.l: + * testsuite/gas/arm/cde-warnings.s: + * testsuite/gas/arm/cde.d: + * testsuite/gas/arm/cde.s: + +2020-02-10 Stam Markianos-Wright + Matthew Malcomson + + * config/tc-arm.c (arm_ext_cde*): New feature sets for each + CDE coprocessor that can be enabled. + (enum pred_instruction_type): New pred type. + (BAD_NO_VPT): New error message. + (BAD_CDE): New error message. + (BAD_CDE_COPROC): New error message. + (enum operand_parse_code): Add new immediate operands. + (parse_operands): Account for new immediate operands. + (check_cde_operand): New. + (cde_coproc_enabled): New. + (cde_coproc_pos): New. + (cde_handle_coproc): New. + (cxn_handle_predication): New. + (do_custom_instruction_1): New. + (do_custom_instruction_2): New. + (do_custom_instruction_3): New. + (do_cx1): New. + (do_cx1a): New. + (do_cx1d): New. + (do_cx1da): New. + (do_cx2): New. + (do_cx2a): New. + (do_cx2d): New. + (do_cx2da): New. + (do_cx3): New. + (do_cx3a): New. + (do_cx3d): New. + (do_cx3da): New. + (handle_pred_state): Define new IT block behaviour. + (insns): Add newn CX*{,d}{,a} instructions. + (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table): + Define new cdecp extension strings. + * doc/c-arm.texi: Document new cdecp extension arguments. + * testsuite/gas/arm/cde-scalar.d: New test. + * testsuite/gas/arm/cde-scalar.s: New test. + * testsuite/gas/arm/cde-warnings.d: New test. + * testsuite/gas/arm/cde-warnings.l: New test. + * testsuite/gas/arm/cde-warnings.s: New test. + * testsuite/gas/arm/cde.d: New test. + * testsuite/gas/arm/cde.s: New test. + +2020-02-10 H.J. Lu + + PR gas/25516 + * config/tc-i386.c (intel64): Renamed to ... + (isa64): This. + (match_template): Accept Intel64 only instruction by default. + (i386_displacement): Updated. + (md_parse_option): Updated. + * c-i386.texi: Update -mamd64/-mintel64 documentation. + * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass + -mamd64 to x86-64-sysenter-amd. + * testsuite/gas/i386/x86-64-sysenter.d: New file. + +2020-02-10 Alan Modra + + * config/obj-elf.c (obj_elf_change_section): Error for section + type, attr or entsize changes in assembly. + * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test. + * testsuite/gas/elf/section5.l: Update. + +2020-02-10 Alan Modra + + * output-file.c (output_file_close): Do a normal close when + flag_always_generate_output. + * write.c (write_object_file): Don't stop output when + flag_always_generate_output. + +2020-02-07 Sergey Belyashov + + PR 25469 + * config/tc-z80.c: Add -gbz80 command line option to generate code + for the GameBoy Z80. Add support for generating DWARF. + * config/tc-z80.h: Add support for DWARF debug information + generation. + * doc/c-z80.texi: Document new command line option. + * testsuite/gas/z80/gbz80_all.d: New file. + * testsuite/gas/z80/gbz80_all.s: New file. + * testsuite/gas/z80/z80.exp: Run the new tests. + * testsuite/gas/z80/z80n_all.d: New file. + * testsuite/gas/z80/z80n_all.s: New file. + * testsuite/gas/z80/z80n_reloc.d: New file. + +2020-02-06 H.J. Lu + + PR gas/25381 + * config/obj-elf.c (get_section): Also check + linked_to_symbol_name. + (obj_elf_change_section): Also set map_head.linked_to_symbol_name. + (obj_elf_parse_section_letters): Handle the 'o' flag. + (build_group_lists): Renamed to ... + (build_additional_section_info): This. Set elf_linked_to_section + from map_head.linked_to_symbol_name. + (elf_adjust_symtab): Updated. + * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name. + * doc/as.texi: Document the 'o' flag. + * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests. + * testsuite/gas/elf/section18.d: New file. + * testsuite/gas/elf/section18.s: Likewise. + * testsuite/gas/elf/section19.d: Likewise. + * testsuite/gas/elf/section19.s: Likewise. + * testsuite/gas/elf/section20.d: Likewise. + * testsuite/gas/elf/section20.s: Likewise. + * testsuite/gas/elf/section21.d: Likewise. + * testsuite/gas/elf/section21.l: Likewise. + * testsuite/gas/elf/section21.s: Likewise. + +2020-02-06 H.J. Lu + + * NEWS: Mention x86 assembler options to align branches for + binutils 2.34. + +2020-02-06 H.J. Lu + + * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique + only for ELF targets. + * testsuite/gas/i386/unique.d: Don't xfail. + * testsuite/gas/i386/x86-64-unique.d: Likewise. + +2020-02-06 Alan Modra + + * testsuite/gas/i386/unique.d: xfail for non-elf targets. + * testsuite/gas/i386/x86-64-unique.d: Likewise. + +2020-02-06 Alan Modra + + * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in + xfail, and rename test. + * testsuite/gas/elf/section12b.d: Likewise. + * testsuite/gas/elf/section16a.d: Likewise. + * testsuite/gas/elf/section16b.d: Likewise. + +2020-02-02 H.J. Lu + + PR gas/25380 + * config/obj-elf.c (section_match): Removed. + (get_section): Also match SEC_ASSEMBLER_SECTION_ID and + section_id. + (obj_elf_change_section): Replace info and group_name arguments + with match_p. Also update the section ID and flags from match_p. + (obj_elf_section): Handle "unique,N". Update call to + obj_elf_change_section. + * config/obj-elf.h (elf_section_match): New. + (obj_elf_change_section): Updated. + * config/tc-arm.c (start_unwind_section): Update call to + obj_elf_change_section. + * config/tc-ia64.c (obj_elf_vms_common): Likewise. + * config/tc-microblaze.c (microblaze_s_data): Likewise. + (microblaze_s_sdata): Likewise. + (microblaze_s_rdata): Likewise. + (microblaze_s_bss): Likewise. + * config/tc-mips.c (s_change_section): Likewise. + * config/tc-msp430.c (msp430_profiler): Likewise. + * config/tc-rx.c (parse_rx_section): Likewise. + * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise. + * doc/as.texi: Document "unique,N" in .section directive. + * testsuite/gas/elf/elf.exp: Run "unique,N" tests. + * testsuite/gas/elf/section15.d: New file. + * testsuite/gas/elf/section15.s: Likewise. + * testsuite/gas/elf/section16.s: Likewise. + * testsuite/gas/elf/section16a.d: Likewise. + * testsuite/gas/elf/section16b.d: Likewise. + * testsuite/gas/elf/section17.d: Likewise. + * testsuite/gas/elf/section17.l: Likewise. + * testsuite/gas/elf/section17.s: Likewise. + * testsuite/gas/i386/unique.d: Likewise. + * testsuite/gas/i386/unique.s: Likewise. + * testsuite/gas/i386/x86-64-unique.d: Likewise. + * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique. + +2020-02-02 H.J. Lu + + * testsuite/gas/elf/section13.s: Replace @nobits with %nobits. + +2020-02-01 Anthony Green + + * config/tc-moxie.c (md_begin): Don't force big-endian mode. + +2020-01-31 Sandra Loosemore + + * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as + %tls_ldo. + +2020-01-31 Andre Vieira + + PR gas/25472 + * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding. + (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for + +mve. + * testsuite/gas/arm/mve_dsp.d: New test. + +2020-01-31 Nick Clifton + + * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE + rather than BFD_RELOC_NONE. + +2020-01-31 Srinath Parvathaneni + + * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" + to support VLDMIA instruction for MVE. + (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB + instruction for MVE. + (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA + instruction for MVE. + (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB + instruction for MVE. + * testsuite/gas/arm/mve-ldst.d: New test. + * testsuite/gas/arm/mve-ldst.s: Likewise. + +2020-01-31 Nick Clifton + + * po/fr.po: Updated French translation. + * po/ru.po: Updated Russian translation. + +2020-01-31 Richard Sandiford + + * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than + .s for the movprfx. + * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly. + * testsuite/gas/aarch64/sve-movprfx_28.d, + * testsuite/gas/aarch64/sve-movprfx_28.l, + * testsuite/gas/aarch64/sve-movprfx_28.s: New test. + +2020-01-30 Jan Beulich + + * config/tc-i386.c (output_disp): Tighten base_opcode check. + * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases. + * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d: + Adjust expectations. + +2020-01-30 Jose E. Marchesi + + * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'. + * testsuite/gas/bpf/alu-be.d: Likewise. + * testsuite/gas/bpf/alu32.d: Likewise for `neg32'. + * testsuite/gas/bpf/alu32-be.d: Likewise. + +2020-01-30 Jan Beulich + + * testsuite/gas/i386/x86-64-branch-2.s, + testsuite/gas/i386/x86-64-branch-4.s, + testsuite/gas/i386/x86-64-branch.s: Add RETW cases. + * testsuite/gas/i386/ilp32/x86-64-branch.d, + testsuite/gas/i386/x86-64-branch-2.d, + testsuite/gas/i386/x86-64-branch-4.l, + testsuite/gas/i386/x86-64-branch.d: Adjust expectations. + +2020-01-30 Jan Beulich + + * config/tc-i386.c (process_suffix): . + testsuite/gas/i386/noreg64.s: Add IRET and LRET cases. + testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET. + Add LRETQ case. + testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without + suffix. + testsuite/gas/i386/x86_64.s: Add RETF cases. + * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d, + testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l, + testsuite/gas/i386/x86-64-opcode.d, + testsuite/gas/i386/x86-64-suffix-intel.d, + testsuite/gas/i386/x86-64-suffix.d, + testsuite/gas/i386/x86_64-intel.d + testsuite/gas/i386/x86_64.d: Adjust expectations. + * testsuite/gas/i386/x86-64-suffix.e, + testsuite/gas/i386/x86_64.e: New. + +2020-01-30 Jan Beulich + + * config/tc-i386.c (process_suffix): Redo and move FLDENV et al + special case. + +2020-01-27 H.J. Lu + + PR binutils/25445 + * config/tc-i386.c (check_long_reg): Also convert to QWORD for + movsxd. + * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA + differences. Document movslq and movsxd. + * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests. + * testsuite/gas/i386/x86-64-movsxd-intel.d: New file. + * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise. + * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise. + * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise. + * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise. + * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise. + * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise. + * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise. + * testsuite/gas/i386/x86-64-movsxd.d: Likewise. + * testsuite/gas/i386/x86-64-movsxd.s: Likewise. + +2020-01-27 Alan Modra + + * testsuite/gas/all/gas.exp: Replace case statements with switch + statements. + * testsuite/gas/elf/elf.exp: Likewise. + * testsuite/gas/macros/macros.exp: Likewise. + * testsuite/lib/gas-defs.exp: Likewise. + +2020-01-27 Tamar Christina + + PR 25403 + * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv. + * testsuite/gas/aarch64/armv8_4-a.s: Likewise. + +2020-01-22 Maxim Blinov + + * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and + s exts must be known, so rename *ok* to *fail*. + * testsuite/gas/riscv/march-ok-sx.d: Likewise. + * testsuite/gas/riscv/march-ok-s-with-version: Likewise. + * testsuite/gas/riscv/march-fail-s.l: Expected error messages for + above change. + * testsuite/gas/riscv/march-fail-sx.l: Likewise. + * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise. + +2020-01-22 H.J. Lu + + PR gas/25438 + * config/tc-i386.c (check_long_reg): Always disallow double word + suffix in mnemonic with word general register. + * testsuite/gas/i386/general.s: Replace word general register + with double word general register for movl. + * testsuite/gas/i386/inval.s: Add tests for movl with word general + register. + * testsuite/gas/i386/general.l: Updated. + * testsuite/gas/i386/inval.l: Likewise. + +2020-01-22 Alan Modra + + * config/tc-ppc.c (parse_tls_arg): Handle tls arg for + __tls_get_addr_desc and __tls_get_addr_opt. + +2020-01-21 Jan Beulich + + * testsuite/gas/i386/inval-crc32.s, + testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive. + * testsuite/gas/i386/inval-crc32.l, + testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations. + +2020-01-21 Jan Beulich + + * config/tc-i386.c (process_suffix): Merge CRC32 handling into + generic code path. Deal with No_lSuf being set in a template. + * testsuite/gas/i386/inval-crc32.l, + testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s) + instead of error(s) when operand size is ambiguous. + * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s, + testsuite/gas/i386/noreg64.s: Add CRC32 tests. + * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l, + testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l, + testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l: + Adjust expectations. + +2020-01-21 Jan Beulich + + * config/tc-i386.c (process_suffix): Drop SYSRET special case + and an intel_syntax check. Re-write lack-of-suffix processing + logic. + * doc/c-i386.texi: Document operand size defaults for suffix- + less AT&T syntax insns. + * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s, + testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s, + testsuite/gas/i386/x86-64-avx-scalar.s, + testsuite/gas/i386/x86-64-avx.s, + testsuite/gas/i386/x86-64-bundle.s, + testsuite/gas/i386/x86-64-intel64.s, + testsuite/gas/i386/x86-64-lock-1.s, + testsuite/gas/i386/x86-64-opcode.s, + testsuite/gas/i386/x86-64-sse2avx.s, + testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes. + * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s, + testsuite/gas/i386/x86-64-nops.s, + testsuite/gas/i386/x86-64-ptwrite.s, + testsuite/gas/i386/x86-64-simd.s, + testsuite/gas/i386/x86-64-sse-noavx.s, + testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less + insns. + * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s, + testsuite/gas/i386/noreg64.s: Add further tests. + * testsuite/gas/i386/ilp32/x86-64-nops.d, + testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d, + testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d, + testsuite/gas/i386/sse-noavx.d, + testsuite/gas/i386/x86-64-intel64.d, + testsuite/gas/i386/x86-64-nops.d, + testsuite/gas/i386/x86-64-opcode.d, + testsuite/gas/i386/x86-64-ptwrite-intel.d, + testsuite/gas/i386/x86-64-ptwrite.d, + testsuite/gas/i386/x86-64-simd-intel.d, + testsuite/gas/i386/x86-64-simd-suffix.d, + testsuite/gas/i386/x86-64-simd.d, + testsuite/gas/i386/x86-64-sse-noavx.d + testsuite/gas/i386/x86-64-suffix.d, + testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations. + * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l, + testsuite/gas/i386/noreg64.l: New. + * testsuite/gas/i386/i386.exp: Run new tests. + +2020-01-21 Jan Beulich + + * testsuite/gas/i386/avx512_bf16_vl.s, + testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms + of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax + broadcast forms of VCVTNEPS2BF16. + * testsuite/gas/i386/avx512_bf16_vl.d, + testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations. + +2020-01-20 Nick Clifton + + * po/uk.po: Updated Ukranian translation. + +2020-01-20 H.J. Lu + + PR ld/25416 + * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix + for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating + x32 object. + * testsuite/gas/i386/ilp32/x32-tls.d: Updated. + * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with + R_X86_64_GOTPC32_TLSDESC relocation. + +2020-01-18 Nick Clifton + + * configure: Regenerate. + * po/gas.pot: Regenerate. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-17 H.J. Lu + + * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2 + with vex_encoding_vex. + (parse_insn): Likewise. + * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex} + and {vex3} documentation. + * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with + {vex}. + * testsuite/gas/i386/x86-64-pseudos.s: Likewise. + +2020-01-16 Andre Vieira + + PR 25376 + * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH. + (armv8_1m_main_ext_table): Use CORE_HIGH for mve. + * testsuite/arm/armv8_1-m-fpu-mve-1.s: New. + * testsuite/arm/armv8_1-m-fpu-mve-1.d: New. + * testsuite/arm/armv8_1-m-fpu-mve-2.s: New. + * testsuite/arm/armv8_1-m-fpu-mve-2.d: New. + +2020-01-16 Jan Beulich + + * config/tc-i386.c (match_template): Drop found_cpu_match local + variable. + +2020-01-16 Jan Beulich + + * testsuite/gas/i386/avx512dq-inval.l, + testsuite/gas/i386/avx512dq-inval.s: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2020-01-15 Jozef Lawrynowicz + + * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X + relocations when the target is 430X, except when extracting part of an + expression. + (msp430_srcoperand): Adjust comment. + Initialize the expp member of the msp430_operand_s struct as + appropriate. + (msp430_dstoperand): Likewise. + * testsuite/gas/msp430/msp430.exp: Run new test. + * testsuite/gas/msp430/reloc-lo-430x.d: New test. + * testsuite/gas/msp430/reloc-lo-430x.s: New test. + +2020-01-15 Alan Modra + + * configure.tgt: Add sparc-*-freebsd case. + +2020-01-14 Lili Cui + + * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin. + * testsuite/gas/i386/align-branch-1b.d: Likewise. + * testsuite/gas/i386/align-branch-1c.d: Likewise. + * testsuite/gas/i386/align-branch-1d.d: Likewise. + * testsuite/gas/i386/align-branch-1e.d: Likewise. + * testsuite/gas/i386/align-branch-1f.d: Likewise. + * testsuite/gas/i386/align-branch-1g.d: Likewise. + * testsuite/gas/i386/align-branch-1h.d: Likewise. + * testsuite/gas/i386/align-branch-1i.d: Likewise. + * testsuite/gas/i386/align-branch-5.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise. + * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise. + * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a, + x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin. + +2020-01-14 Sergey Belyashov + + PR 25377 + * config/tc-z80.c: Add support for half precision, single + precision and double precision floating point values. + * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes. + * doc/as.texi: Add new z80 command line options. + * doc/c-z80.texi: Document new z80 command line options. + * testsuite/gas/z80/ez80_pref_dis.s: New test. + * testsuite/gas/z80/ez80_pref_dis.d: New test driver. + * testsuite/gas/z80/z80.exp: Run the new test. + * testsuite/gas/z80/fp_math48.d: Use correct command line option. + * testsuite/gas/z80/fp_zeda32.d: Likewise. + * testsuite/gas/z80/strings.d: Update expected output. + +2020-01-13 Matthew Malcomson + + * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature + dependency. + +2020-01-13 Claudiu Zissulescu + + * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change + the CPU. + * config/tc-arc.h: Add header if/defs. + * testsuite/gas/arc/pseudos.d: Improve matching pattern. + +2020-01-13 Alan Modra + + * testsuite/gas/wasm32/allinsn.d: Update expected output. + +2020-01-13 Alan Modra + + * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap + insertion. + +2020-01-10 Alan Modra + + * testsuite/gas/elf/pr14891.s: Don't start directives in first column. + * testsuite/gas/elf/pr21661.d: Don't run on hpux. + +2020-01-03 Sergey Belyashov + + PR 25224 + * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking + opcode byte values. + (emit_ld_r_r): Likewise. + (emit_ld_rr_m): Likewise. + (emit_ld_rr_nn): Likewise. + +2020-01-09 Jan Beulich + + * config/tc-i386.c (optimize_encoding): Add + is_any_vex_encoding() invocations. Drop respective + i.tm.extension_opcode == None checks. + +2020-01-09 Jan Beulich + + * config/tc-i386.c (md_assemble): Check RegRex is clear during + REX transformations. Correct comment indentation. + +2020-01-09 Jan Beulich + + * config/tc-i386.c (optimize_encoding): Generalize register + transformation for TEST optimization. + +2020-01-09 Jan Beulich + + * testsuite/gas/i386/x86-64-sysenter-amd.s, + testsuite/gas/i386/x86-64-sysenter-amd.d, + testsuite/gas/i386/x86-64-sysenter-amd.l, + testsuite/gas/i386/x86-64-sysenter-intel.d, + testsuite/gas/i386/x86-64-sysenter-mixed.d: New. + * testsuite/gas/i386/i386.exp: Run new tests. + +2020-01-08 Nick Clifton + + PR 25284 + * doc/as.texi (Align): Document the fact that all arguments can be + omitted. + (Balign): Likewise. + (P2align): Likewise. + +2020-01-08 Nick Clifton + + PR 14891 + * config/obj-elf.c (obj_elf_section): Fail if the section name is + already defined as a different symbol type. + * testsuite/gas/elf/pr14891.s: New test source file. + * testsuite/gas/elf/pr14891.d: New test driver. + * testsuite/gas/elf/pr14891.s: New test expected error output. + * testsuite/gas/elf/elf.exp: Run the new test. + +2020-01-08 Alan Modra + + * config/tc-z8k.c (md_begin): Make idx unsigned. + (get_specific): Likewise for this_index. + +2020-01-07 Claudiu Zissulescu + + * onfig/tc-arc.c (parse_reloc_symbol): New function. + (tokenize_arguments): Clean up, use parse_reloc_symbol function. + (md_operand): Set X_md to absent. + (arc_parse_name): Check for X_md. + +2020-01-03 Sergey Belyashov + + PR 25311 + * as.h (TC_STRING_ESCAPES): Provide a default definition. + * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of + NO_STRING_ESCAPES. + * read.c (next_char_of_string): Likewise. + * config/tc-ppc.h (TC_STRING_ESCAPES): Define. + * config/tc-z80.h (TC_STRING_ESCAPES): Define. + +2020-01-03 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2020-01-03 Jan Beulich + + * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}. + * testsuite/gas/aarch64/f64mm.d: Adjust expectations. + +2020-01-03 Jan Beulich + + * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for + by-element usdot. Add 64-bit form tests for by-element sudot. + * testsuite/gas/aarch64/i8mm.d: Adjust expectations. + +2020-01-03 Jan Beulich + + * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip. + * testsuite/gas/aarch64/f64mm.d: Adjust expectations. + +2020-01-03 Jan Beulich + + * testsuite/gas/aarch64/f64mm.d, + testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations. + +2020-01-02 Sergey Belyashov + + * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add + support for assembler code generated by SDCC. Add new relocation + types. Add z80-elf target support. + * config/tc-z80.h: Add z80-elf target support. Enable dollar local + labels. Local labels starts from ".L". + * NEWS: Mention the new support. + * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict. + * testsuite/gas/all/fwdexp.s: Likewise. + * testsuite/gas/all/cond.l: Likewise. + * testsuite/gas/all/cond.s: Likewise. + * testsuite/gas/all/fwdexp.d: Likewise. + * testsuite/gas/all/fwdexp.s: Likewise. + * testsuite/gas/elf/section2.e-mips: Likewise. + * testsuite/gas/elf/section2.l: Likewise. + * testsuite/gas/elf/section2.s: Likewise. + * testsuite/gas/macros/app1.d: Likewise. + * testsuite/gas/macros/app1.s: Likewise. + * testsuite/gas/macros/app2.d: Likewise. + * testsuite/gas/macros/app2.s: Likewise. + * testsuite/gas/macros/app3.d: Likewise. + * testsuite/gas/macros/app3.s: Likewise. + * testsuite/gas/macros/app4.d: Likewise. + * testsuite/gas/macros/app4.s: Likewise. + * testsuite/gas/macros/app4b.s: Likewise. + * testsuite/gas/z80/suffix.d: Fix failure on ELF target. + * testsuite/gas/z80/z80.exp: Add new tests + * testsuite/gas/z80/dollar.d: New file. + * testsuite/gas/z80/dollar.s: New file. + * testsuite/gas/z80/ez80_adl_all.d: New file. + * testsuite/gas/z80/ez80_adl_all.s: New file. + * testsuite/gas/z80/ez80_adl_suf.d: New file. + * testsuite/gas/z80/ez80_isuf.s: New file. + * testsuite/gas/z80/ez80_z80_all.d: New file. + * testsuite/gas/z80/ez80_z80_all.s: New file. + * testsuite/gas/z80/ez80_z80_suf.d: New file. + * testsuite/gas/z80/r800_extra.d: New file. + * testsuite/gas/z80/r800_extra.s: New file. + * testsuite/gas/z80/r800_ii8.d: New file. + * testsuite/gas/z80/r800_z80_doc.d: New file. + * testsuite/gas/z80/z180.d: New file. + * testsuite/gas/z80/z180.s: New file. + * testsuite/gas/z80/z180_z80_doc.d: New file. + * testsuite/gas/z80/z80_doc.d: New file. + * testsuite/gas/z80/z80_doc.s: New file. + * testsuite/gas/z80/z80_ii8.d: New file. + * testsuite/gas/z80/z80_ii8.s: New file. + * testsuite/gas/z80/z80_in_f_c.d: New file. + * testsuite/gas/z80/z80_in_f_c.s: New file. + * testsuite/gas/z80/z80_op_ii_ld.d: New file. + * testsuite/gas/z80/z80_op_ii_ld.s: New file. + * testsuite/gas/z80/z80_out_c_0.d: New file. + * testsuite/gas/z80/z80_out_c_0.s: New file. + * testsuite/gas/z80/z80_reloc.d: New file. + * testsuite/gas/z80/z80_reloc.s: New file. + * testsuite/gas/z80/z80_sli.d: New file. + * testsuite/gas/z80/z80_sli.s: New file. + +2020-01-02 Szabolcs Nagy + + * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of + REGLIST_RN. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2019 + +Copyright (C) 2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/gold/ChangeLog b/gold/ChangeLog index 9614a87f76d..cf5fd0bb4c2 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,572 +1,6 @@ -2020-12-19 H.J. Lu - - PR gold/27097 - * incremental.cc (Sized_relobj_incr::do_add_symbols): Move sym - declaration just before use. - (Sized_incr_dynobj::do_add_symbols): Likewise. - * plugin.cc (Sized_pluginobj::do_add_symbols): Likewise. - -2020-12-15 Cary Coutant - - * dwp.cc (class Dwo_file): Use new Ehdr::get_ei_osabi and - get_ei_abiversion methods. - * incremental.cc (make_sized_incremental_binary): Likewise. - * object.cc (Sized_relobj_file::Sized_relobj_file): Likewise. - (make_elf_sized_object): Likewise. - * object.h (class Osabi): Make the class untemplated. - -2020-12-15 Vivek Das Mohapatra - - Implement -z unique / -z nounique options. - * layout.cc (Layout::finish_dynamic_section): Set DF_GNU_1_UNIQUE. - * options.h (class General_options): Handle -z unique, -z nounique. - -2020-12-14 H.J. Lu - Cary Coutant - - PR gold/27039 - * layout.cc (Layout::layout): Strip SHF_GNU_RETAIN. - * object.cc (Sized_relobj_file::Sized_relobj_file): Initialize osabi_. - (Sized_relobj_file::do_layout): Keep SHF_GNU_RETAIN sections for - GNU/FreBSD ELFOSABIs. - * object.h (Osabi) New class. - (Sized_relobj_file): Add osabi() and osabi_. - * testsuite/Makefile.am (check_SCRIPTS): Add retain.sh. - (check_DATA): Add retain_1.out retain_2.out. - (MOSTLYCLEANFILES): Add retain_1 retain_2. - (retain_1.out): New target. - (retain_1): Likewise. - (retain_1.o): Likewise. - (retain_2.out): Likewise. - (retain_2): Likewise. - (retain_2.o): Likewise. - * testsuite/Makefile.in: Regenerate. - * testsuite/retain.sh: New file. - * testsuite/retain_1.s: Likewise. - * testsuite/retain_2.s: Likewise. - -2020-12-13 Cary Coutant - - PR gold/23539 - PR gold/24123 - * testsuite/Makefile.am (incremental_copy_test): Re-enable for GCC 9+. - (incremental_comdat_test_1): Likewise. - * testsuite/Makefile.in: Regenerate. - -2020-12-13 Cary Coutant - - PR gold/23539 - * object.cc (Sized_relobj_file::layout_gnu_property_section): Ignore - Gnu properties during incremental links. - -2020-12-13 Cary Coutant - - PR gold/24123 - * layout.cc (Layout::init_fixed_output_section): Mask out flags that - should be ignored when matching sections. - -2020-12-07 Alan Modra - - * plugin.cc (Plugin_recorder::init): Replace strncpy with memcpy. - -2020-12-03 Alan Modra - - * testsuite/Makefile.am (pr26936a.o): Pass -mx86-used-note=yes. - (pr26936b.o, pr26936c.o, pr26936d.o): Likewise. - * testsuite/Makefile.in: Regenerate. - -2020-11-29 H.J. Lu - - PR ld/26972 - * x86_64.cc (Output_data_plt_x86_64_ibt::tlsdesc_plt_entry): Add - endbr64. - (Output_data_plt_x86_64_ibt::do_fill_tlsdesc_entry): Adjusted. - -2020-11-29 H.J. Lu - - PR gold/26939 - * x86_64.cc (Target_x86_64::Scan::local): Check - get_r_addend() == -4 for GOTPCRELX conversion. - (Target_x86_64::Scan::global): Likewise. - (Target_x86_64::Relocate::relocate): Likewise. - * testsuite/Makefile.am (check_DATA): Add - x86_64_mov_to_lea15.stdout and x86_64_mov_to_lea16.stdout. - (MOSTLYCLEANFILES): Add x86_64_mov_to_lea15 and - x86_64_mov_to_lea16. - (x86_64_mov_to_lea9.o): New target. - (x86_64_mov_to_lea10.o): Likewise. - (x86_64_mov_to_lea15): Likewise. - (x86_64_mov_to_lea16): Likewise. - (x86_64_mov_to_lea15.stdout): Likewise. - (x86_64_mov_to_lea16.stdout): Likewise. - * testsuite/Makefile.in: Regenerated. - * testsuite/x86_64_mov_to_lea.sh: Updated. - * testsuite/x86_64_mov_to_lea5.s: New file. - -2020-11-29 H.J. Lu - - PR gold/26937 - * object.cc (Sized_relobj_file::map_to_kept_section): Get the - section index for linkonce section. Also check the single - comdat section. - * testsuite/Makefile.am (check_SCRIPTS): Add pr26936.sh. - (check_DATA): Add pr26936a.stdout and pr26936b.stdout. - (MOSTLYCLEANFILES): Add pr26936a and pr26936b. - (pr26936a.stdout): New target. - (pr26936a): Likewise. - (pr26936b.stdout): Likewise. - (pr26936b): Likewise. - (pr26936a.o): Likewise. - (pr26936b.o): Likewise. - (pr26936c.o): Likewise. - (pr26936d.o): Likewise. - * testsuite/Makefile.in: Regenerated. - * testsuite/pr26936.sh: New file. - * testsuite/pr26936a.s: Likewise. - * testsuite/pr26936b.s: Likewise. - * testsuite/pr26936c.s: Likewise. - * testsuite/pr26936d.s: Likewise. - -2020-11-17 Alan Modra - - * powerpc.cc (Target_powerpc::no_tprel_opt_): Rename from tprel_opt_. - Init to false. - (Target_powerpc::tprel_opt): Test parameters->options().tls_optimize(). - (Target_powerpc::set_tprel_opt): Delete. - (Target_powerpc::set_no_tprel_opt): New function. Update all uses - of set_tprel_opt. - -2020-11-16 Michael Hudson-Doyle - - PR 26902 - * powerpc.cc (Relocate::relocate): Do not include local entry - offset of target function when computing the address of a stub. - -2020-11-08 H.J. Lu - - PR gold/26200 - * plugin.cc (Plugin_manager::claim_file): Don't share Plugin_list - iterator. - (Plugin_manager::all_symbols_read): Likewise. - (Plugin_manager::cleanup): Likewise. - -2020-11-03 Alan Modra - - * powerpc.cc (Target_powerpc::tocsave_loc): Return a pointer. - (Target_powerpc::Relocate::relocate): Avoid -Wdangling-gsl error. - -2020-11-03 Nick Gasson - - PR 26827 - * fileread.cc (File_read::open): Ensure file_counts_lock is - initialized. - * testsuite/Makefile.am (check_PROGRAMS): Add a test that passes - -Wl,--threads. - * testsuite/Makefile.in: Regenerate. - -2020-10-30 H.J. Lu - - * testsuite/gnu_property_test.sh: Updated. - -2020-10-22 H.J. Lu - - * Makefile.am (bootstrap-test): Skip for LTO build. - (bootstrap-test-r): Likewise. - -2020-10-13 H.J. Lu - - PR gold/23539 - * configure.ac: Check for GCC 9 or later and for -fcf-protection. - * configure: Regenerated. - * testsuite/Makefile.am (check_PROGRAMS): Skip incremental_test_2, - incremental_test_3, incremental_test_4, incremental_test_5, - incremental_copy_test, incremental_common_test_1 and - incremental_comdat_test_1 for -fcf-protection. Also Skip - incremental_copy_test and incremental_comdat_test_1 for GCC 9 or - later. - * testsuite/Makefile.in: Regenerated. - -2020-10-13 H.J. Lu - - PR gold/23503 - * testsuite/Makefile.am (justsyms_lib): Pass - -T $(srcdir)/justsyms_lib.t to gold. - * testsuite/Makefile.in: Regenerated. - * testsuite/justsyms_lib.t: New file. - * testsuite/script_test_10.t: Discard .note.gnu.property section. - -2020-10-13 H.J. Lu - - * x86_64.cc (Target_x86_64::Target_x86_64): Initialize - feature_2_used_, feature_2_needed_ and object_feature_2_used_. - (Target_x86_64::feature_2_used_): New data member. - (Target_x86_64::feature_2_needed_): Likewise. - (Target_x86_64::object_isa_1_used_): Likewise. - (Target_x86_64::record_gnu_property): Support - GNU_PROPERTY_X86_COMPAT_ISA_1_USED, - GNU_PROPERTY_X86_COMPAT_ISA_1_NEEDED, - GNU_PROPERTY_X86_COMPAT_2_ISA_1_USED, - GNU_PROPERTY_X86_COMPAT_2_ISA_1_NEEDED, - GNU_PROPERTY_X86_FEATURE_2_USED and - GNU_PROPERTY_X86_FEATURE_2_NEEDED. - (Target_x86_64::merge_gnu_properties): Merge FEATURE_2_USED bits. - Initialize object_feature_2_used_. - (Target_x86_64::do_finalize_gnu_properties): Support - GNU_PROPERTY_X86_FEATURE_2_USED and - GNU_PROPERTY_X86_FEATURE_2_NEEDED. - * testsuite/gnu_property_a.S (GNU_PROPERTY_X86_ISA_1_USED): Set - to 0xc0010002. - (GNU_PROPERTY_X86_ISA_1_NEEDED): Set to 0xc0008002. - * testsuite/gnu_property_b.S (GNU_PROPERTY_X86_ISA_1_USED): Set - to 0xc0010002. - (GNU_PROPERTY_X86_ISA_1_NEEDED): Set to 0xc0008002. - * testsuite/gnu_property_c.S (GNU_PROPERTY_X86_ISA_1_USED): Set - to 0xc0010002. - (GNU_PROPERTY_X86_ISA_1_NEEDED): Set to 0xc0008002. - * testsuite/gnu_property_test.sh: Updated. - -2020-10-13 H.J. Lu - - PR gold/22914 - PR gold/23535 - * layout.cc (Layout::attach_allocated_section_to_segment): Place - a note section in a PT_NOTE segment with the same alignment. Set - the alignment of the PT_NOTE segment from the alignment of the - note section. - (Layout::create_note): Align the NT_GNU_PROPERTY_TYPE_0 note to 8 - bytes for 64-bit ELF. - (Layout::segment_precedes): Place segments with larger alignments - first. - * output.cc (Output_segment::Output_segment): Initialize align_. - * output.h (Output_segment): Add align, set_align and align_. - * testsuite/Makefile.am (gnu_property_test.stdout): Pass -lhSWn - to $(TEST_READELF). - (gnu_property_test): Pass --build-id to ld. - * testsuite/Makefile.in: Regenerated. - * testsuite/gnu_property_test.sh (check_alignment): New. - Use check_alignment to check the NT_GNU_PROPERTY_TYPE_0 note - alignment. Verify that there are 2 PT_NOTE segments. - -2020-10-13 H.J. Lu - - PR gold/21452 - * x86_64.cc (Scan::local_reloc_may_be_function_pointer): Remove - check for shared library. - (Scan::global_reloc_may_be_function_pointer): Remove check for - shared library and symbol visibility. - * testsuite/icf_safe_so_test.cc (bar_static): New function. - (main): Take function address of bar_static and use it. - * testsuite/icf_safe_so_test.sh (arch_specific_safe_fold): Also - check fold on x86-64. Check bar_static isn't folded. - -2020-10-13 H.J. Lu - - * icf.cc (Icf::find_identical_sections): Skip zero-sized sections. - -2020-10-09 Alan Modra - - * powerpc.cc (Powerpc_relobj::do_relocate_sections): Don't do - local entry offset optimisation for lplt_section. - (Target_powerpc::Branch_info::make_stub): Don't add local - entry offset to long branch dest passed to - add_long_branch_entry. Do pass st_other bits. - (Stub_table::Branch_stub_ent): Add "other_" field. - (Stub_table::add_long_branch_entry): Add "other" param, and - save. - (Stub_table::branch_stub_size): Adjust long branch offset. - (Stub_table::do_write): Likewise. - (Target_powerpc::Relocate::relocate): Likewise. - -2020-10-09 Alan Modra - - * powerpc.cc (is_got_reloc): New function. - (Target_powerpc::Relocate::relocate): Use it here, exclude GOT - relocs when looking for stubs. - -2020-10-08 H.J. Lu - - * testsuite/split_i386.sh: Updated for --split-stack-adjust-size - default change. - * testsuite/split_x86_64.sh: Likewise. - -2020-10-08 Alan Modra - - * options.h (split_stack_adjust_size): Default to 0x100000. - -2020-09-26 Alan Modra - - * powerpc.cc (Target_powerpc): Rename power10_stubs_ to - power10_relocs_. - (Target_powerpc::set_power10_relocs): New accessor. - (Target_powerpc::set_power10_stubs): Delete. - (Target_powerpc::power10_stubs): Adjust. - (Target_powerpc::has_localentry0): New accessor. - (ld_0_11): New constant. - (glink_eh_frame_fde_64v1, glink_eh_frame_fde_64v2): Adjust. - (glink_eh_frame_fde_64v2_localentry0): New. - (Output_data_glink::pltresolve_size): Update. - (Output_data_glink::add_eh_frame): Use localentry0 version eh_frame. - (Output_data_glink::do_write): Move r2 save to start of ELFv2 stub - and only emit for has_localentry0. Don't use r2 in the stub. - (Target_powerpc::Scan::local, global): Adjust for - set_power10_relocs renaming. - (Target_powerpc::scan_relocs): Warn and reset plt_localentry0_. - -2020-09-24 Alan Modra - - * powerpc.cc (Target_powerpc::Relocate::relocate): Don't skip - first insn of __tls_get_addr_opt stub. - -2020-08-24 Alan Modra - - * powerpc.cc (Target_powerpc): Add tprel_opt_ and accessors. - (Target_powerpc::Scan::local): Sanity check tprel high relocs. - (Target_powerpc::Scan::global): Likewise. - (Target_powerpc::Relocate::relocate): Control tprel optimisation - with tprel_opt_ and enable for 32-bit. - -2020-08-12 Nick Clifton - - * po/sr.po: Updated Serbian translation. - -2020-07-27 Alan Modra - - * options.h (DEFINE_enum): Add optional_arg__ param, adjust - all uses. - (General_options): Add --power10-stubs and --no-power10-stubs. - * options.cc (General_options::parse_no_power10_stubs): New. - (General_options::finalize): Handle --power10-stubs. - * powerpc.cc (set_power10_stubs): Don't set when --power10-stubs=no. - (power10_stubs_auto): New. - (struct Plt_stub_ent): Add toc_ and tocoff_. Don't use a bitfield - for indx_. - (struct Branch_stub_ent): Add toc_and tocoff_. Use bitfields for - iter_, notoc_ and save_res_. - (add_plt_call_entry): Set toc_. Adjust resizing conditions for - --power10-stubs=auto. - (add_long_branch_entry): Set toc_. - (add_eh_frame, define_stub_syms): No longer use const_iterators - for plt and long branch stub iteration. - (build_tls_opt_head, build_tls_opt_tail): Change parameters and - return value. Move tests for __tls_get_addr to callers. - (plt_call_size): Handle --power10-stubs=auto. - (branch_stub_size): Likewise. - (Stub_table::do_write): Likewise. - (relocate): Likewise. - -2020-07-19 H.J. Lu - - * testsuite/bnd_ifunc_1.sh: Updated. - * testsuite/bnd_plt_1.sh: Likewise. - * testsuite/split_x32.sh: Likewise. - * testsuite/split_x86_64.sh: Likewise. - * testsuite/x86_64_indirect_call_to_direct.sh: Likewise. - -2020-07-08 Nick Clifton - - * testsuite/script_test_7.sh: Adjust expected address of the .bss - section. - * testsuite/script_test_9.sh: Do not expect the .init section to - immediately follow the .text section in the mapping of sections to - segments. - -2020-07-07 Nick Clifton - - * target-reloc.h: (Default_comdat_behaviour:get): Ignore discarded - relocs that refer to the .gnu.build.attributes section. - -2020-07-06 Nick Clifton - - * po/fr.po: Updated French translation. - * po/uk.po: Updated Ukranian translation. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-07-03 Alan Modra - - PR 26028 - * testsuite/Makefile.am (file_in_many_sections.stdout): Add -W - to readelf options. - * testsuite/Makefile.in: Regenerate. - -2020-06-26 Nick Alcock - - * configure.ac: Check for bswap_16, bswap_32, and bswap_64 decls. - * configure: Regenerated. - * config.h.in: Likewise. - -2020-06-24 Nick Clifton - - * target-reloc.h (issue_discarded_error): Initialise the - key_symndx variable. - -2020-06-23 Roland McGrath - - PR 22843 - * options.h (class General_options): Add --dependency-file option. - * fileread.cc (File_read::files_read): New static variable. - (File_read::open): Add the file to the files_read list. - (File_read::record_file_read): New static member function. - (File_read::write_dependency_file): New static member function. - * fileread.h (class File_read): Declare them. - * layout.cc (Layout::read_layout_from_file): Call record_file_read. - (Close_task_runner::run): Call write_dependency_file if - --dependency-file was passed. - -2020-06-18 Fangrui Song - - PR gold/26039 - * layout.cc (Layout::finish_dynamic_section): Set DF_1_PIE. - -2020-06-16 Alan Modra - - * testsuite/discard_locals_test.c: Replace uses of asm with __asm__. - * testsuite/discard_locals_relocatable_test.c: Likewise. - -2020-06-16 Alan Modra - - * testsuite/Makefile.am (export_dynamic_plugin.o): Use CXXCOMPILE. - (plugin_test_wrap_symbols_1.o): Likewise. - (plugin_test_wrap_symbols_2.o): Likewise. - * testsuite/Makefile.in: Regenerate. - -2020-06-15 Roland McGrath - - Implement -z start-stop-visibility=... option. - * options.h (class General_options): Handle -z start-stop-visibility=. - (General_options::start_stop_visibility_enum): New public method. - (General_options::set_start_stop_visibility_enum): New private method. - (General_options::start_stop_visibility_enum_): New private member. - * options.cc (General_options::General_options): Add initializer. - (General_options::finalize): Set this->start_stop_visibility_enum_ - from string value. - * layout.cc (Layout::define_section_symbols): Use option setting. - -2020-06-06 Alan Modra - - * powerpc.cc: Update throughout for reloc renaming. - -2020-05-22 Alan Modra - - PR 25882 - * powerpc.cc (merge_object_attributes): Replace name param with - obj param. Update callers. Don't init FP attributes from shared - libraries, and do not emit an error if they don't match. - -2020-05-15 Nikita Ermakov - - * powerpc.cc (do_gc_mark_symbol): Don't segfault on plugin symbols. - -2020-05-14 Nick Clifton - - * po/sr.po: New Serbian translation. - -2020-05-11 Alan Modra - - * powerpc.cc: Rename powerxx to power10 throughout. - -2020-05-02 H.J. Lu - - PR gold/25904 - * testsuite/Makefile.am (COMMON_TEST_C_CFLAGS): New. - (common_test_1.o): New rule. - (common_test_2.o): Likewise. - (common_test_3.o): Likewise. - (plugin_common_test_1.o): Likewise. - (plugin_common_test_2.o): Likewise. - (common_test_1_v1.o): Likewise. - (common_test_1_v2.o): Likewise. - (common_test_2_pic.o): Compile with $(COMMON_TEST_C_CFLAGS). - (common_test_3_pic.o): Likewise. - * testsuite/Makefile.in: Regenerated. - -2020-05-01 H.J. Lu - - PR gold/25426 - * x86_64.cc (Target_x86_64::Relocate::tls_desc_gd_to_ie): - For x32, relax "rex leal foo@tlsdesc(%rip), %reg" to - "rex movl foo@gottpoff(%rip), %eax" and relax ""call *(%eax)" - to "nopl (%rax)". - (Target_x86_64::Relocate::tls_desc_gd_to_le): For x32, - relax "rex leal foo@tlsdesc(%rip), %reg" to - "rex movl foo@tpoff, %eax" and relax "call *foo@tlscall(%eax)" - to "nopl (%rax)". - * testsuite/Makefile.am (tls_test_gnu2.o): Depend on - gcctestdir/as. - (tls_test_file2_gnu2.o): Likewise. - (tls_test_c_gnu2.o): Likewise. - * testsuite/Makefile.in: Regenerated. - -2020-05-01 H.J. Lu - - PR gold/25473 - * x86_64.cc (Target_x86_64::Relocate::tls_desc_gd_to_ie): - Properly check r8 - r15 in "lea foo@TLSDESC(%rip), %reg". - (Target_x86_64::Relocate::tls_desc_gd_to_le): Properly - relax r8 - r15 in "lea foo@TLSDESC(%rip), %reg". - * testsuite/Makefile.am (check_SCRIPTS): Add x86_64_gd_to_le.sh. - (check_DATA): Add x86_64_gd_to_le.stdout. - (MOSTLYCLEANFILES): Add x86_64_gd_to_le. - (x86_64_gd_to_le.o): New target. - (x86_64_gd_to_le): Likewise. - (x86_64_gd_to_le.stdout): Likewise. - * testsuite/Makefile.in: Regenerated. - * testsuite/x86_64_gd_to_le.s: New file. - * testsuite/x86_64_gd_to_le.sh: Likewise. - -2020-05-01 H.J. Lu - - * testsuite/odr_violation2.cc (Ordering::operator()): Make - expression even more complex. - -2020-05-01 H.J. Lu - - * testsuite/ver_test_pr16504.sh: Updated. - -2020-05-01 H.J. Lu - - PR gold/25872 - * x86_64.cc (Output_data_plt_x86_64_bnd::do_write): Increment - plt_offset after setting the reserved TLSDESC PLT entry. - (Output_data_plt_x86_64_ibt::do_write): Likewise. - -2020-05-01 H.J. Lu - - PR gold/25872 - * x86_64.cc (Output_data_plt_x86_64_bnd::do_address_for_local): - Handle local IFUNC symbol. - (Output_data_plt_x86_64_ibt::do_address_for_local): Likewise. - -2020-03-19 Fangrui Song - - * options.h (General_options): Add --no-rosegment option. - -2020-02-24 Nick Clifton - - * po/fr.po: Update French translation. - -2020-01-20 Nick Clifton - - * po/uk.po: Updated Ukranian translation. - -2020-01-18 Nick Clifton - - * configure: Regenerate. - * po/gold.pot: Regenerate. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2019 +For older changes see ChangeLog-2020 -Copyright (C) 2020 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gold/ChangeLog-2020 b/gold/ChangeLog-2020 new file mode 100644 index 00000000000..9614a87f76d --- /dev/null +++ b/gold/ChangeLog-2020 @@ -0,0 +1,580 @@ +2020-12-19 H.J. Lu + + PR gold/27097 + * incremental.cc (Sized_relobj_incr::do_add_symbols): Move sym + declaration just before use. + (Sized_incr_dynobj::do_add_symbols): Likewise. + * plugin.cc (Sized_pluginobj::do_add_symbols): Likewise. + +2020-12-15 Cary Coutant + + * dwp.cc (class Dwo_file): Use new Ehdr::get_ei_osabi and + get_ei_abiversion methods. + * incremental.cc (make_sized_incremental_binary): Likewise. + * object.cc (Sized_relobj_file::Sized_relobj_file): Likewise. + (make_elf_sized_object): Likewise. + * object.h (class Osabi): Make the class untemplated. + +2020-12-15 Vivek Das Mohapatra + + Implement -z unique / -z nounique options. + * layout.cc (Layout::finish_dynamic_section): Set DF_GNU_1_UNIQUE. + * options.h (class General_options): Handle -z unique, -z nounique. + +2020-12-14 H.J. Lu + Cary Coutant + + PR gold/27039 + * layout.cc (Layout::layout): Strip SHF_GNU_RETAIN. + * object.cc (Sized_relobj_file::Sized_relobj_file): Initialize osabi_. + (Sized_relobj_file::do_layout): Keep SHF_GNU_RETAIN sections for + GNU/FreBSD ELFOSABIs. + * object.h (Osabi) New class. + (Sized_relobj_file): Add osabi() and osabi_. + * testsuite/Makefile.am (check_SCRIPTS): Add retain.sh. + (check_DATA): Add retain_1.out retain_2.out. + (MOSTLYCLEANFILES): Add retain_1 retain_2. + (retain_1.out): New target. + (retain_1): Likewise. + (retain_1.o): Likewise. + (retain_2.out): Likewise. + (retain_2): Likewise. + (retain_2.o): Likewise. + * testsuite/Makefile.in: Regenerate. + * testsuite/retain.sh: New file. + * testsuite/retain_1.s: Likewise. + * testsuite/retain_2.s: Likewise. + +2020-12-13 Cary Coutant + + PR gold/23539 + PR gold/24123 + * testsuite/Makefile.am (incremental_copy_test): Re-enable for GCC 9+. + (incremental_comdat_test_1): Likewise. + * testsuite/Makefile.in: Regenerate. + +2020-12-13 Cary Coutant + + PR gold/23539 + * object.cc (Sized_relobj_file::layout_gnu_property_section): Ignore + Gnu properties during incremental links. + +2020-12-13 Cary Coutant + + PR gold/24123 + * layout.cc (Layout::init_fixed_output_section): Mask out flags that + should be ignored when matching sections. + +2020-12-07 Alan Modra + + * plugin.cc (Plugin_recorder::init): Replace strncpy with memcpy. + +2020-12-03 Alan Modra + + * testsuite/Makefile.am (pr26936a.o): Pass -mx86-used-note=yes. + (pr26936b.o, pr26936c.o, pr26936d.o): Likewise. + * testsuite/Makefile.in: Regenerate. + +2020-11-29 H.J. Lu + + PR ld/26972 + * x86_64.cc (Output_data_plt_x86_64_ibt::tlsdesc_plt_entry): Add + endbr64. + (Output_data_plt_x86_64_ibt::do_fill_tlsdesc_entry): Adjusted. + +2020-11-29 H.J. Lu + + PR gold/26939 + * x86_64.cc (Target_x86_64::Scan::local): Check + get_r_addend() == -4 for GOTPCRELX conversion. + (Target_x86_64::Scan::global): Likewise. + (Target_x86_64::Relocate::relocate): Likewise. + * testsuite/Makefile.am (check_DATA): Add + x86_64_mov_to_lea15.stdout and x86_64_mov_to_lea16.stdout. + (MOSTLYCLEANFILES): Add x86_64_mov_to_lea15 and + x86_64_mov_to_lea16. + (x86_64_mov_to_lea9.o): New target. + (x86_64_mov_to_lea10.o): Likewise. + (x86_64_mov_to_lea15): Likewise. + (x86_64_mov_to_lea16): Likewise. + (x86_64_mov_to_lea15.stdout): Likewise. + (x86_64_mov_to_lea16.stdout): Likewise. + * testsuite/Makefile.in: Regenerated. + * testsuite/x86_64_mov_to_lea.sh: Updated. + * testsuite/x86_64_mov_to_lea5.s: New file. + +2020-11-29 H.J. Lu + + PR gold/26937 + * object.cc (Sized_relobj_file::map_to_kept_section): Get the + section index for linkonce section. Also check the single + comdat section. + * testsuite/Makefile.am (check_SCRIPTS): Add pr26936.sh. + (check_DATA): Add pr26936a.stdout and pr26936b.stdout. + (MOSTLYCLEANFILES): Add pr26936a and pr26936b. + (pr26936a.stdout): New target. + (pr26936a): Likewise. + (pr26936b.stdout): Likewise. + (pr26936b): Likewise. + (pr26936a.o): Likewise. + (pr26936b.o): Likewise. + (pr26936c.o): Likewise. + (pr26936d.o): Likewise. + * testsuite/Makefile.in: Regenerated. + * testsuite/pr26936.sh: New file. + * testsuite/pr26936a.s: Likewise. + * testsuite/pr26936b.s: Likewise. + * testsuite/pr26936c.s: Likewise. + * testsuite/pr26936d.s: Likewise. + +2020-11-17 Alan Modra + + * powerpc.cc (Target_powerpc::no_tprel_opt_): Rename from tprel_opt_. + Init to false. + (Target_powerpc::tprel_opt): Test parameters->options().tls_optimize(). + (Target_powerpc::set_tprel_opt): Delete. + (Target_powerpc::set_no_tprel_opt): New function. Update all uses + of set_tprel_opt. + +2020-11-16 Michael Hudson-Doyle + + PR 26902 + * powerpc.cc (Relocate::relocate): Do not include local entry + offset of target function when computing the address of a stub. + +2020-11-08 H.J. Lu + + PR gold/26200 + * plugin.cc (Plugin_manager::claim_file): Don't share Plugin_list + iterator. + (Plugin_manager::all_symbols_read): Likewise. + (Plugin_manager::cleanup): Likewise. + +2020-11-03 Alan Modra + + * powerpc.cc (Target_powerpc::tocsave_loc): Return a pointer. + (Target_powerpc::Relocate::relocate): Avoid -Wdangling-gsl error. + +2020-11-03 Nick Gasson + + PR 26827 + * fileread.cc (File_read::open): Ensure file_counts_lock is + initialized. + * testsuite/Makefile.am (check_PROGRAMS): Add a test that passes + -Wl,--threads. + * testsuite/Makefile.in: Regenerate. + +2020-10-30 H.J. Lu + + * testsuite/gnu_property_test.sh: Updated. + +2020-10-22 H.J. Lu + + * Makefile.am (bootstrap-test): Skip for LTO build. + (bootstrap-test-r): Likewise. + +2020-10-13 H.J. Lu + + PR gold/23539 + * configure.ac: Check for GCC 9 or later and for -fcf-protection. + * configure: Regenerated. + * testsuite/Makefile.am (check_PROGRAMS): Skip incremental_test_2, + incremental_test_3, incremental_test_4, incremental_test_5, + incremental_copy_test, incremental_common_test_1 and + incremental_comdat_test_1 for -fcf-protection. Also Skip + incremental_copy_test and incremental_comdat_test_1 for GCC 9 or + later. + * testsuite/Makefile.in: Regenerated. + +2020-10-13 H.J. Lu + + PR gold/23503 + * testsuite/Makefile.am (justsyms_lib): Pass + -T $(srcdir)/justsyms_lib.t to gold. + * testsuite/Makefile.in: Regenerated. + * testsuite/justsyms_lib.t: New file. + * testsuite/script_test_10.t: Discard .note.gnu.property section. + +2020-10-13 H.J. Lu + + * x86_64.cc (Target_x86_64::Target_x86_64): Initialize + feature_2_used_, feature_2_needed_ and object_feature_2_used_. + (Target_x86_64::feature_2_used_): New data member. + (Target_x86_64::feature_2_needed_): Likewise. + (Target_x86_64::object_isa_1_used_): Likewise. + (Target_x86_64::record_gnu_property): Support + GNU_PROPERTY_X86_COMPAT_ISA_1_USED, + GNU_PROPERTY_X86_COMPAT_ISA_1_NEEDED, + GNU_PROPERTY_X86_COMPAT_2_ISA_1_USED, + GNU_PROPERTY_X86_COMPAT_2_ISA_1_NEEDED, + GNU_PROPERTY_X86_FEATURE_2_USED and + GNU_PROPERTY_X86_FEATURE_2_NEEDED. + (Target_x86_64::merge_gnu_properties): Merge FEATURE_2_USED bits. + Initialize object_feature_2_used_. + (Target_x86_64::do_finalize_gnu_properties): Support + GNU_PROPERTY_X86_FEATURE_2_USED and + GNU_PROPERTY_X86_FEATURE_2_NEEDED. + * testsuite/gnu_property_a.S (GNU_PROPERTY_X86_ISA_1_USED): Set + to 0xc0010002. + (GNU_PROPERTY_X86_ISA_1_NEEDED): Set to 0xc0008002. + * testsuite/gnu_property_b.S (GNU_PROPERTY_X86_ISA_1_USED): Set + to 0xc0010002. + (GNU_PROPERTY_X86_ISA_1_NEEDED): Set to 0xc0008002. + * testsuite/gnu_property_c.S (GNU_PROPERTY_X86_ISA_1_USED): Set + to 0xc0010002. + (GNU_PROPERTY_X86_ISA_1_NEEDED): Set to 0xc0008002. + * testsuite/gnu_property_test.sh: Updated. + +2020-10-13 H.J. Lu + + PR gold/22914 + PR gold/23535 + * layout.cc (Layout::attach_allocated_section_to_segment): Place + a note section in a PT_NOTE segment with the same alignment. Set + the alignment of the PT_NOTE segment from the alignment of the + note section. + (Layout::create_note): Align the NT_GNU_PROPERTY_TYPE_0 note to 8 + bytes for 64-bit ELF. + (Layout::segment_precedes): Place segments with larger alignments + first. + * output.cc (Output_segment::Output_segment): Initialize align_. + * output.h (Output_segment): Add align, set_align and align_. + * testsuite/Makefile.am (gnu_property_test.stdout): Pass -lhSWn + to $(TEST_READELF). + (gnu_property_test): Pass --build-id to ld. + * testsuite/Makefile.in: Regenerated. + * testsuite/gnu_property_test.sh (check_alignment): New. + Use check_alignment to check the NT_GNU_PROPERTY_TYPE_0 note + alignment. Verify that there are 2 PT_NOTE segments. + +2020-10-13 H.J. Lu + + PR gold/21452 + * x86_64.cc (Scan::local_reloc_may_be_function_pointer): Remove + check for shared library. + (Scan::global_reloc_may_be_function_pointer): Remove check for + shared library and symbol visibility. + * testsuite/icf_safe_so_test.cc (bar_static): New function. + (main): Take function address of bar_static and use it. + * testsuite/icf_safe_so_test.sh (arch_specific_safe_fold): Also + check fold on x86-64. Check bar_static isn't folded. + +2020-10-13 H.J. Lu + + * icf.cc (Icf::find_identical_sections): Skip zero-sized sections. + +2020-10-09 Alan Modra + + * powerpc.cc (Powerpc_relobj::do_relocate_sections): Don't do + local entry offset optimisation for lplt_section. + (Target_powerpc::Branch_info::make_stub): Don't add local + entry offset to long branch dest passed to + add_long_branch_entry. Do pass st_other bits. + (Stub_table::Branch_stub_ent): Add "other_" field. + (Stub_table::add_long_branch_entry): Add "other" param, and + save. + (Stub_table::branch_stub_size): Adjust long branch offset. + (Stub_table::do_write): Likewise. + (Target_powerpc::Relocate::relocate): Likewise. + +2020-10-09 Alan Modra + + * powerpc.cc (is_got_reloc): New function. + (Target_powerpc::Relocate::relocate): Use it here, exclude GOT + relocs when looking for stubs. + +2020-10-08 H.J. Lu + + * testsuite/split_i386.sh: Updated for --split-stack-adjust-size + default change. + * testsuite/split_x86_64.sh: Likewise. + +2020-10-08 Alan Modra + + * options.h (split_stack_adjust_size): Default to 0x100000. + +2020-09-26 Alan Modra + + * powerpc.cc (Target_powerpc): Rename power10_stubs_ to + power10_relocs_. + (Target_powerpc::set_power10_relocs): New accessor. + (Target_powerpc::set_power10_stubs): Delete. + (Target_powerpc::power10_stubs): Adjust. + (Target_powerpc::has_localentry0): New accessor. + (ld_0_11): New constant. + (glink_eh_frame_fde_64v1, glink_eh_frame_fde_64v2): Adjust. + (glink_eh_frame_fde_64v2_localentry0): New. + (Output_data_glink::pltresolve_size): Update. + (Output_data_glink::add_eh_frame): Use localentry0 version eh_frame. + (Output_data_glink::do_write): Move r2 save to start of ELFv2 stub + and only emit for has_localentry0. Don't use r2 in the stub. + (Target_powerpc::Scan::local, global): Adjust for + set_power10_relocs renaming. + (Target_powerpc::scan_relocs): Warn and reset plt_localentry0_. + +2020-09-24 Alan Modra + + * powerpc.cc (Target_powerpc::Relocate::relocate): Don't skip + first insn of __tls_get_addr_opt stub. + +2020-08-24 Alan Modra + + * powerpc.cc (Target_powerpc): Add tprel_opt_ and accessors. + (Target_powerpc::Scan::local): Sanity check tprel high relocs. + (Target_powerpc::Scan::global): Likewise. + (Target_powerpc::Relocate::relocate): Control tprel optimisation + with tprel_opt_ and enable for 32-bit. + +2020-08-12 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-07-27 Alan Modra + + * options.h (DEFINE_enum): Add optional_arg__ param, adjust + all uses. + (General_options): Add --power10-stubs and --no-power10-stubs. + * options.cc (General_options::parse_no_power10_stubs): New. + (General_options::finalize): Handle --power10-stubs. + * powerpc.cc (set_power10_stubs): Don't set when --power10-stubs=no. + (power10_stubs_auto): New. + (struct Plt_stub_ent): Add toc_ and tocoff_. Don't use a bitfield + for indx_. + (struct Branch_stub_ent): Add toc_and tocoff_. Use bitfields for + iter_, notoc_ and save_res_. + (add_plt_call_entry): Set toc_. Adjust resizing conditions for + --power10-stubs=auto. + (add_long_branch_entry): Set toc_. + (add_eh_frame, define_stub_syms): No longer use const_iterators + for plt and long branch stub iteration. + (build_tls_opt_head, build_tls_opt_tail): Change parameters and + return value. Move tests for __tls_get_addr to callers. + (plt_call_size): Handle --power10-stubs=auto. + (branch_stub_size): Likewise. + (Stub_table::do_write): Likewise. + (relocate): Likewise. + +2020-07-19 H.J. Lu + + * testsuite/bnd_ifunc_1.sh: Updated. + * testsuite/bnd_plt_1.sh: Likewise. + * testsuite/split_x32.sh: Likewise. + * testsuite/split_x86_64.sh: Likewise. + * testsuite/x86_64_indirect_call_to_direct.sh: Likewise. + +2020-07-08 Nick Clifton + + * testsuite/script_test_7.sh: Adjust expected address of the .bss + section. + * testsuite/script_test_9.sh: Do not expect the .init section to + immediately follow the .text section in the mapping of sections to + segments. + +2020-07-07 Nick Clifton + + * target-reloc.h: (Default_comdat_behaviour:get): Ignore discarded + relocs that refer to the .gnu.build.attributes section. + +2020-07-06 Nick Clifton + + * po/fr.po: Updated French translation. + * po/uk.po: Updated Ukranian translation. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-07-03 Alan Modra + + PR 26028 + * testsuite/Makefile.am (file_in_many_sections.stdout): Add -W + to readelf options. + * testsuite/Makefile.in: Regenerate. + +2020-06-26 Nick Alcock + + * configure.ac: Check for bswap_16, bswap_32, and bswap_64 decls. + * configure: Regenerated. + * config.h.in: Likewise. + +2020-06-24 Nick Clifton + + * target-reloc.h (issue_discarded_error): Initialise the + key_symndx variable. + +2020-06-23 Roland McGrath + + PR 22843 + * options.h (class General_options): Add --dependency-file option. + * fileread.cc (File_read::files_read): New static variable. + (File_read::open): Add the file to the files_read list. + (File_read::record_file_read): New static member function. + (File_read::write_dependency_file): New static member function. + * fileread.h (class File_read): Declare them. + * layout.cc (Layout::read_layout_from_file): Call record_file_read. + (Close_task_runner::run): Call write_dependency_file if + --dependency-file was passed. + +2020-06-18 Fangrui Song + + PR gold/26039 + * layout.cc (Layout::finish_dynamic_section): Set DF_1_PIE. + +2020-06-16 Alan Modra + + * testsuite/discard_locals_test.c: Replace uses of asm with __asm__. + * testsuite/discard_locals_relocatable_test.c: Likewise. + +2020-06-16 Alan Modra + + * testsuite/Makefile.am (export_dynamic_plugin.o): Use CXXCOMPILE. + (plugin_test_wrap_symbols_1.o): Likewise. + (plugin_test_wrap_symbols_2.o): Likewise. + * testsuite/Makefile.in: Regenerate. + +2020-06-15 Roland McGrath + + Implement -z start-stop-visibility=... option. + * options.h (class General_options): Handle -z start-stop-visibility=. + (General_options::start_stop_visibility_enum): New public method. + (General_options::set_start_stop_visibility_enum): New private method. + (General_options::start_stop_visibility_enum_): New private member. + * options.cc (General_options::General_options): Add initializer. + (General_options::finalize): Set this->start_stop_visibility_enum_ + from string value. + * layout.cc (Layout::define_section_symbols): Use option setting. + +2020-06-06 Alan Modra + + * powerpc.cc: Update throughout for reloc renaming. + +2020-05-22 Alan Modra + + PR 25882 + * powerpc.cc (merge_object_attributes): Replace name param with + obj param. Update callers. Don't init FP attributes from shared + libraries, and do not emit an error if they don't match. + +2020-05-15 Nikita Ermakov + + * powerpc.cc (do_gc_mark_symbol): Don't segfault on plugin symbols. + +2020-05-14 Nick Clifton + + * po/sr.po: New Serbian translation. + +2020-05-11 Alan Modra + + * powerpc.cc: Rename powerxx to power10 throughout. + +2020-05-02 H.J. Lu + + PR gold/25904 + * testsuite/Makefile.am (COMMON_TEST_C_CFLAGS): New. + (common_test_1.o): New rule. + (common_test_2.o): Likewise. + (common_test_3.o): Likewise. + (plugin_common_test_1.o): Likewise. + (plugin_common_test_2.o): Likewise. + (common_test_1_v1.o): Likewise. + (common_test_1_v2.o): Likewise. + (common_test_2_pic.o): Compile with $(COMMON_TEST_C_CFLAGS). + (common_test_3_pic.o): Likewise. + * testsuite/Makefile.in: Regenerated. + +2020-05-01 H.J. Lu + + PR gold/25426 + * x86_64.cc (Target_x86_64::Relocate::tls_desc_gd_to_ie): + For x32, relax "rex leal foo@tlsdesc(%rip), %reg" to + "rex movl foo@gottpoff(%rip), %eax" and relax ""call *(%eax)" + to "nopl (%rax)". + (Target_x86_64::Relocate::tls_desc_gd_to_le): For x32, + relax "rex leal foo@tlsdesc(%rip), %reg" to + "rex movl foo@tpoff, %eax" and relax "call *foo@tlscall(%eax)" + to "nopl (%rax)". + * testsuite/Makefile.am (tls_test_gnu2.o): Depend on + gcctestdir/as. + (tls_test_file2_gnu2.o): Likewise. + (tls_test_c_gnu2.o): Likewise. + * testsuite/Makefile.in: Regenerated. + +2020-05-01 H.J. Lu + + PR gold/25473 + * x86_64.cc (Target_x86_64::Relocate::tls_desc_gd_to_ie): + Properly check r8 - r15 in "lea foo@TLSDESC(%rip), %reg". + (Target_x86_64::Relocate::tls_desc_gd_to_le): Properly + relax r8 - r15 in "lea foo@TLSDESC(%rip), %reg". + * testsuite/Makefile.am (check_SCRIPTS): Add x86_64_gd_to_le.sh. + (check_DATA): Add x86_64_gd_to_le.stdout. + (MOSTLYCLEANFILES): Add x86_64_gd_to_le. + (x86_64_gd_to_le.o): New target. + (x86_64_gd_to_le): Likewise. + (x86_64_gd_to_le.stdout): Likewise. + * testsuite/Makefile.in: Regenerated. + * testsuite/x86_64_gd_to_le.s: New file. + * testsuite/x86_64_gd_to_le.sh: Likewise. + +2020-05-01 H.J. Lu + + * testsuite/odr_violation2.cc (Ordering::operator()): Make + expression even more complex. + +2020-05-01 H.J. Lu + + * testsuite/ver_test_pr16504.sh: Updated. + +2020-05-01 H.J. Lu + + PR gold/25872 + * x86_64.cc (Output_data_plt_x86_64_bnd::do_write): Increment + plt_offset after setting the reserved TLSDESC PLT entry. + (Output_data_plt_x86_64_ibt::do_write): Likewise. + +2020-05-01 H.J. Lu + + PR gold/25872 + * x86_64.cc (Output_data_plt_x86_64_bnd::do_address_for_local): + Handle local IFUNC symbol. + (Output_data_plt_x86_64_ibt::do_address_for_local): Likewise. + +2020-03-19 Fangrui Song + + * options.h (General_options): Add --no-rosegment option. + +2020-02-24 Nick Clifton + + * po/fr.po: Update French translation. + +2020-01-20 Nick Clifton + + * po/uk.po: Updated Ukranian translation. + +2020-01-18 Nick Clifton + + * configure: Regenerate. + * po/gold.pot: Regenerate. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2019 + +Copyright (C) 2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/gprof/ChangeLog b/gprof/ChangeLog index 316d71d5635..cf5fd0bb4c2 100644 --- a/gprof/ChangeLog +++ b/gprof/ChangeLog @@ -1,78 +1,6 @@ -2020-07-30 Rainer Orth - - * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. - * Makefile.in: Regenerate. - * configure: Regenerate. - -2020-07-09 Nick Clifton - - * po/tr.po: Updated Turkish translation. - -2020-07-06 Nick Clifton - - * po/bg.po: Updated Bulgarian translation. - -2020-07-04 Nick Clifton - - * configure: Regenerate. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-06-25 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2020-05-21 Alan Modra - - * utils.c (print_name_only): Free demangled without checking - first for non-NULL. - -2020-05-18 Nick Clifton - - * po/es.po: Update Spanish translation. - -2020-05-07 Nick Clifton - - * po/fr.po: Updated French translation. - -2020-04-01 Nick Clifton - - * po/sr.po: Updated Serbian translation. - -2020-02-24 Nick Clifton - - * po/ms.po: Update Malasian translation. - -2020-01-23 Nick Clifton - - * po/es.po: Updated Esperanto translation. - * po/fi.po: Updated Finish translation. - -2020-01-20 Nick Clifton - - * po/de.po: Updated German translation. - * po/pt_BR.po: Updated Brazilian Portuguese translation. - * po/ru.po: Updated Russian translation. - * po/tr.po: Updated Turkish translation. - * po/uk.po: Updated Ukranian translation. - -2020-01-18 Nick Clifton - - * configure: Regenerate. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2019 +For older changes see ChangeLog-2020 -Copyright (C) 2020 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gprof/ChangeLog-2020 b/gprof/ChangeLog-2020 new file mode 100644 index 00000000000..316d71d5635 --- /dev/null +++ b/gprof/ChangeLog-2020 @@ -0,0 +1,86 @@ +2020-07-30 Rainer Orth + + * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. + * Makefile.in: Regenerate. + * configure: Regenerate. + +2020-07-09 Nick Clifton + + * po/tr.po: Updated Turkish translation. + +2020-07-06 Nick Clifton + + * po/bg.po: Updated Bulgarian translation. + +2020-07-04 Nick Clifton + + * configure: Regenerate. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-06-25 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2020-05-21 Alan Modra + + * utils.c (print_name_only): Free demangled without checking + first for non-NULL. + +2020-05-18 Nick Clifton + + * po/es.po: Update Spanish translation. + +2020-05-07 Nick Clifton + + * po/fr.po: Updated French translation. + +2020-04-01 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-02-24 Nick Clifton + + * po/ms.po: Update Malasian translation. + +2020-01-23 Nick Clifton + + * po/es.po: Updated Esperanto translation. + * po/fi.po: Updated Finish translation. + +2020-01-20 Nick Clifton + + * po/de.po: Updated German translation. + * po/pt_BR.po: Updated Brazilian Portuguese translation. + * po/ru.po: Updated Russian translation. + * po/tr.po: Updated Turkish translation. + * po/uk.po: Updated Ukranian translation. + +2020-01-18 Nick Clifton + + * configure: Regenerate. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2019 + +Copyright (C) 2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/include/ChangeLog b/include/ChangeLog index 976b36105e3..cf5fd0bb4c2 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,1012 +1,6 @@ -2020-12-23 H.J. Lu - - * elf/common.h (GNU_PROPERTY_X86_FEATURE_1_LAM_U48): New. - (GNU_PROPERTY_X86_FEATURE_1_LAM_U57): Likewise. - -2020-12-18 Alan Modra - - * xtensa-isa-internal.h (xtisa_errno, xtisa_error_msg): Delete. - -2020-12-18 Alan Modra - - * opcode/arc-attrs.h (CONFLICT_LIST): Make const. - -2020-12-16 Alan Modra - - * bfdlink.h (struct bfd_link_info): Add maxpagesize and - commonpagesize. - -2020-12-16 Alan Modra - - * xtensa-isa-internal.h (xtensa_format_internal), - (xtensa_slot_internal, xtensa_operand_internal), - (xtensa_arg_internal, xtensa_iclass_internal), - (xtensa_opcode_internal, xtensa_regfile_internal), - (xtensa_interface_internal, xtensa_funcUnit_internal), - (xtensa_state_internal, xtensa_sysreg_internal): Constify. - -2020-12-15 Vivek Das Mohapatra - - * elf/common.h (DT_GNU_FLAGS_1, DF_GNU_1_UNIQUE): Define. - * bfdlink.h (struct bfd_link_info): New field gnu_flags_1. - -2020-12-11 Cary Coutant - - * elf/common.h: Update list of e_machine values. - -2020-12-10 Nelson Chu - - * opcode/riscv.h (M_ZEXTH, M_ZEXTW, M_SEXTB, M_SEXTH.): Added. - -2020-12-10 Nelson Chu - - * opcode/riscv.h: Add INSN_CLASS_ZICSR and INSN_CLASS_ZIFENCEI. - -2020-12-07 Nick Clifton - - * elf/common.h (SHF_GNU_BUILD_NOTE): Delete. - -2020-12-01 Nelson Chu - - * opcode/riscv.h (RISCV_UNKNOWN_VERSION): added. - -2020-12-01 Nelson Chu - - * opcode/riscv.h (riscv_ext_version): - Change the version type from unsigned to int. - -2020-11-23 Nick Alcock - - * ctf-api.h: Style nit: remove () on function names in comments. - (ctf_sect_t): Mention endianness concerns. - (ctf_symsect_endianness): New declaration. - (ctf_arc_symsect_endianness): Likewise. - -2020-11-20 Nick Alcock - - * ctf-api.h (ctf_getsymsect): New. - (ctf_getstrsect): Likewise. - -2020-11-20 Nick Alcock - - * ctf-api.h (ctf_arc_lookup_symbol): New. - (ctf_arc_flush_caches): Likewise. - * ctf.h: Document new auto-ctf_import behaviour. - -2020-11-20 Nick Alcock - - * ctf-api.h (ctf_symbol_next): New. - (ctf_add_objt_sym): Likewise. - (ctf_add_func_sym): Likewise. - * ctf.h: Document new function info section format. - (CTF_F_NEWFUNCINFO): New. - (CTF_F_IDXSORTED): New. - (CTF_F_MAX): Adjust accordingly. - -2020-11-20 Nick Alcock - - * bfdlink.h (struct elf_sym_strtab): Replace with... - (struct elf_internal_sym): ... this. - (struct bfd_link_callbacks) : Take only a - symstrtab argument. - : New. - : Likewise. - * ctf-api.h (struct ctf_link_sym) : New. - : Likewise. - : Likewise. - (ctf_link_iter_symbol_f): Removed. - (ctf_link_shuffle_syms): Remove most parameters, just takes a - ctf_dict_t now. - (ctf_link_add_linker_symbol): New, split from - ctf_link_shuffle_syms. - * ctf.h (CTF_F_DYNSTR): New. - (CTF_F_MAX): Adjust. - -2020-11-20 Nick Alcock - - * ctf-api.h (ctf_arc_open_by_name): Rename to... - (ctf_dict_open): ... this, keeping compatibility function. - (ctf_arc_open_by_name_sections): Rename to... - (ctf_dict_open_sections): ... this, keeping compatibility function. - -2020-11-20 Nick Alcock - - * ctf-api.h (ctf_file_t): Rename to... - (ctf_dict_t): ... this. Keep ctf_file_t around for compatibility. - (struct ctf_file): Likewise rename to... - (struct ctf_dict): ... this. - (ctf_file_close): Rename to... - (ctf_dict_close): ... this, keeping compatibility function. - (ctf_parent_file): Rename to... - (ctf_parent_dict): ... this, keeping compatibility function. - All callers adjusted. - * ctf.h: Rename references to ctf_file_t to ctf_dict_t. - (struct ctf_archive) : Rename to... - : ... this. - -2020-11-18 Jozef Lawrynowicz - - * elf/common.h (SHF_GNU_RETAIN): Define. - -2020-11-16 Przemyslaw Wirkus - - * opcode/aarch64.h (AARCH64_FEATURE_FLAGM): Add new feature. - (AARCH64_FEATURE_FLAGMANIP): Update comment. - (AARCH64_ARCH_V8_4): Add back FLAGM to Armv8.4-A. - -2020-11-09 Spencer E. Olson - - * opcode/pru.h: Add LMBD (left-most bit detect) opcode index. - -2020-11-09 Przemyslaw Wirkus - - * opcode/aarch64.h (enum aarch64_opnd): Add new operand AARCH64_OPND_Rt_LS64. - -2020-11-06 Przemyslaw Wirkus - - * opcode/aarch64.h (AARCH64_FEATURE_PAC): Add new feature. - (AARCH64_ARCH_V8_3): Add back PAC to Armv8.3-A. - -2020-11-04 Przemyslaw Wirkus - - * opcode/aarch64.h (AARCH64_ARCH_V8): Add RAS to Armv8-A. - (AARCH64_ARCH_V8_2): Remove RAS from Armv8.2-A set. - -2020-11-03 Przemyslaw Wirkus - - * opcode/aarch64.h (AARCH64_FEATURE_LS64): New +ls64 feature flag. - (AARCH64_ARCH_V8_7): Add LS64 as part of Armv8.7-a. - -2020-10-30 H.J. Lu - - PR gas/26703 - * elf/common.h (GNU_PROPERTY_X86_ISA_1_BASELINE): New. - (GNU_PROPERTY_X86_ISA_1_V2): Uppdated. - (GNU_PROPERTY_X86_ISA_1_V3): Likewise. - (GNU_PROPERTY_X86_ISA_1_V4): Likewise. - -2020-10-27 Przemyslaw Wirkus - - * opcode/aarch64.h (AARCH64_FEATURE_CSRE): New -march feature. -(enum aarch64_opnd): New CSR instruction field AARCH64_OPND_CSRE_CSR. - -2020-10-26 Cooper Qu - - * opcode/csky.h (CSKY_VERSION_V1): New, currently used. - (CSKY_VERSION_V2): New. - (CSKY_VERSION_V3): New. - -2020-10-23 Przemyslaw Wirkus - - * opcode/aarch64.h (enum aarch64_opnd): New operand - AARCH64_OPND_BARRIER_DSB_NXS. - (aarch64_barrier_dsb_nxs_options): Declare DSB nXS options. - -2020-10-21 Tom Tromey - - * ctf-api.h (_CTF_ERRORS): New macro. - -2020-10-16 Nelson Chu - - * elf/riscv.h: Add R_RISCV_IRELATIVE to 58. - -2020-10-16 Przemyslaw Wirkus - - * opcode/aarch64.h (AARCH64_FEATURE_V8_7): New feature bitmask. - (AARCH64_ARCH_V8_7): New arch feature set. - -2020-10-09 H.J. Lu - - PR gas/26703 - * elf/common.h (GNU_PROPERTY_X86_ISA_1_USED): Renamed to ... - (GNU_PROPERTY_X86_COMPAT_2_ISA_1_USED): This. - (GNU_PROPERTY_X86_ISA_1_NEEDED): Renamed to ... - (GNU_PROPERTY_X86_COMPAT_2_ISA_1_NEEDED): This. - (GNU_PROPERTY_X86_ISA_1_XXX): Renamed to ... - (GNU_PROPERTY_X86_COMPAT_2_ISA_1_XXX): This. - (GNU_PROPERTY_X86_ISA_1_NEEDED): New. - (GNU_PROPERTY_X86_ISA_1_USED): Likewise. - (GNU_PROPERTY_X86_ISA_1_V2): Likewise. - (GNU_PROPERTY_X86_ISA_1_V3): Likewise. - (GNU_PROPERTY_X86_ISA_1_V4): Likewise. - (GNU_PROPERTY_X86_FEATURE_2_MASK): Likewise. - -2020-09-23 Mark Wielaard - - Sync with GCC - * dwarf2.def: Add DWARF5 Unit type header encoding macros - DW_UT_FIRST, DW_UT and DW_UT_END. - * dwarf2.h (enum dwarf_unit_type): Removed and define using - DW_UT_FIRST, DW_UT and DW_UT_END macros. - (get_DW_UT_name): New function declaration. - -2020-09-12 H.J. Lu - - PR ld/26391 - * bfdlink.h (bfd_link_info): Add unique_symbol. - -2020-09-11 Felix Willgerodt - - Sync with GCC - 2020-09-08 Felix Willgerodt - - * floatformat.h (floatformat_bfloat16_big): New. - (floatformat_bfloat16_little): New. - -2020-09-12 Cooper Qu - - * opcode/csky.h (CSKYV1_ISA_E1): Convert to bfd_uint64_t type. - (CSKYV2_ISA_E1): Likewise. - (CSKYV2_ISA_1E2>): Likewise. - (CSKYV2_ISA_2E3>): Likewise. - (CSKYV2_ISA_3E7>): Likewise. - (CSKYV2_ISA_7E10): Likewise. - (CSKYV2_ISA_3E3R1): Likewise. - (CSKYV2_ISA_3E3R2): Likewise. - (CSKYV2_ISA_10E60): Likewise. - (CSKYV2_ISA_3E3R3): Likewise. - (CSKY_ISA_TRUST): Likewise. - (CSKY_ISA_CACHE): Likewise. - (CSKY_ISA_NVIC): Likewise. - (CSKY_ISA_CP): Likewise. - (CSKY_ISA_MP): Likewise. - (CSKY_ISA_MP_1E2): Likewise. - (CSKY_ISA_JAVA): Likewise. - (CSKY_ISA_MAC): Likewise. - (CSKY_ISA_MAC_DSP): Likewise. - (CSKY_ISA_DSP): Likewise. - (CSKY_ISA_DSP_1E2): Likewise. - (CSKY_ISA_DSP_ENHANCE): Likewise. - (CSKY_ISA_DSPE60): Likewise. - (CSKY_ISA_FLOAT_E1): Likewise. - (CSKY_ISA_FLOAT_1E2): Likewise. - (CSKY_ISA_FLOAT_1E3): Likewise. - (CSKY_ISA_FLOAT_3E4): Likewise. - (CSKY_ISA_FLOAT_7E60): Likewise. - (CSKY_ISA_VDSP): Likewise. - (CSKY_ISA_VDSP_2): Likewise. - (CSKY_ARCH_804): Define. - (CSKY_ARCH_805): Define. - (CSKY_ARCH_800): Define. - -2020-09-11 H.J. Lu - - * elf/common.h (NT_X86_CET): New. - -2020-09-10 Cooper Qu - - * opcode/csky.h (CSKY_ARCH_804): Define. - (CSKY_ARCH_805): Define. - (CSKY_ARCH_800): Define. - -2020-09-10 Nick Clifton - - * opcode/csky.h (CSKY_ISA_FLOAT_7E60): Use a long long type for - this value. - -2020-09-07 Cooper Qu - - * opcode/csky.h (CSKY_ISA_DSPE60): Define. - -2020-09-07 Cooper Qu - - * opcode/csky.h (CSKY_ISA_FLOAT_7E60): Define. - -2020-09-08 Jozef Lawrynowicz - Kuan-Lin Chen - - * elf/msp430.h (elf_msp430_reloc_type): Add - R_MSP430_GNU_{SET,SUB}_ULEB128. - (elf_msp430x_reloc_type): Add R_MSP430X_GNU_{SET,SUB}_ULEB128. - -2020-09-08 Alex Coplan - - * opcode/aarch64.h (aarch64_sys_ins_reg_supported_p): Also take - system register name in order to simplify validation for v8-R. - (aarch64_print_operand): Also take CPU feature set, as disassembly for - system registers now depends on arch variant. - -2020-09-08 Alex Coplan - - * opcode/aarch64.h (AARCH64_FEATURE_V8_A): New. - (AARCH64_FEATURE_V8_R): New. - (AARCH64_ARCH_V8): Include new A-profile feature bit. - (AARCH64_ARCH_V8_R): New. - -2020-09-02 Alan Modra - - * opcode/v850.h (struct v850_operand ): Make param op an - unsigned long. - -2020-09-02 Cooper Qu - - * opcode/csky.h (CSKYV2_ISA_3E3R3): Define. - -2020-08-31 Alan Modra - - PR 26493 - * opcode/riscv.h (OP_MASK_CSR, OP_MASK_CUSTOM_IMM) - (OP_MASK_FUNCT7, OP_MASK_RS3): Make unsigned. - -2020-08-31 Alan Modra - - PR 26457 - * som/aout.h (SOM_SUBSPACE_ACCESS_CONTROL_BITS_MASK): Make unsigned. - (SOM_SUBSPACE_MEMORY_RESIDENT, SOM_SUBSPACE_DUP_COMMON) - (SOM_SUBSPACE_IS_COMMON, SOM_SUBSPACE_IS_LOADABLE) - (SOM_SUBSPACE_QUADRANT_MASK, SOM_SUBSPACE_INITIALLY_FROZEN) - (SOM_SUBSPACE_IS_FIRST, SOM_SUBSPACE_CODE_ONLY) - (SOM_SUBSPACE_SORT_KEY_MASK, SOM_SUBSPACE_REPLICATE_INIT) - (SOM_SUBSPACE_CONTINUATION, SOM_SUBSPACE_IS_TSPECIFIC) - (SOM_SUBSPACE_IS_COMDAT): Likewise. - -2020-08-28 Cooper Qu - - * elf/csky.h (SHT_CSKY_ATTRIBUTES): Define. - (Tag_CSKY_ARCH_NAME): New enum constant. - (Tag_CSKY_CPU_NAME): Likewise. - (Tag_CSKY_ISA_FLAGS): Likewise. - (Tag_CSKY_DSP_VERSION): Likewise. - (Tag_CSKY_VDSP_VERSION): Likewise. - (Tag_CSKY_FPU_VERSION): Likewise. - (Tag_CSKY_FPU_ABI): Likewise. - (Tag_CSKY_FPU_ROUNDING): Likewise. - (Tag_CSKY_FPU_DENORMAL): Likewise. - (Tag_CSKY_FPU_Exception): Likewise. - (Tag_CSKY_FPU_NUMBER_MODULE): Likewise. - (Tag_CSKY_FPU_HARDFP): Likewise. - (Tag_CSKY_MAX): Likewise. - (VAL_CSKY_DSP_VERSION_EXTENSION): Likewise. - (VAL_CSKY_DSP_VERSION_2): Likewise. - (VAL_CSKY_VDSP_VERSION_1): Likewise. - (VAL_CSKY_VDSP_VERSION_2): Likewise. - (VAL_CSKY_FPU_ABI_SOFT): Likewise. - (VAL_CSKY_FPU_ABI_SOFTFP): Likewise. - (VAL_CSKY_FPU_ABI_HARD): Likewise. - (VAL_CSKY_FPU_HARDFP_HALF): Likewise. - (VAL_CSKY_FPU_HARDFP_SINGLE): Likewise. - (VAL_CSKY_FPU_HARDFP_DOUBLE): Likewise. - * opcode/csky.h (CSKY_ISA_VDSP_V2): Define. - CSKYV1_ISA_E1: Change to long constant type. - CSKYV2_ISA_E1: Likewise. - CSKYV2_ISA_1E2: Likewise. - CSKYV2_ISA_2E3: Likewise. - CSKYV2_ISA_3E7: Likewise. - CSKYV2_ISA_7E10: Likewise. - CSKYV2_ISA_3E3R1: Likewise. - CSKYV2_ISA_3E3R2: Likewise. - CSKYV2_ISA_10E60: Likewise. - CSKY_ISA_TRUST: Likewise. - CSKY_ISA_CACHE: Likewise. - CSKY_ISA_NVIC: Likewise. - CSKY_ISA_CP: Likewise. - CSKY_ISA_MP: Likewise. - CSKY_ISA_MP_1E2: Likewise. - CSKY_ISA_JAVA: Likewise. - CSKY_ISA_MAC: Likewise. - CSKY_ISA_MAC_DSP: Likewise. - CSKY_ISA_DSP: Likewise. - CSKY_ISA_DSP_1E2: Likewise. - CSKY_ISA_DSP_ENHANCE: Likewise. - CSKY_ISA_FLOAT_E1: Likewise. - CSKY_ISA_FLOAT_1E2: Likewise. - CSKY_ISA_FLOAT_1E3: Likewise. - CSKY_ISA_FLOAT_3E4: Likewise. - CSKY_ISA_VDSP: Likewise. - -2020-08-27 Nick Alcock - - * ctf-api.h (ctf_errwarning_next): New err parameter. - -2020-08-26 Nick Clifton - - PR 26405 - * elf/common.h (PT_OPENBSD_BOOTDATA): Define. - (PT_OPENBSD_RANDOMIZE): Define. - (PT_OPENBSD_WXNEEDED): Define. - -2020-08-26 Alan Modra - - PR 26458 - * elf/common.h (ELF32_R_INFO): Cast symbol index to unsigned. - -2020-08-24 Cooper Qu - - * opcode/csky.h (CSKYV2_ISA_10E60): New. - (CSKY_ARCH_860): New. - -2020-08-21 Cooper Qu - - * csky.h (CSKYV2_ISA_3E3R2): New. - -2020-08-21 Mark Wielaard - - * diagnostics.h (DIAGNOSTIC_IGNORE_DEPRECATED_REGISTER): Also define - for GCC 7.0 or higher. - -2020-08-10 Alex Coplan - - * opcode/aarch64.h (AARCH64_MAX_SYSREG_NAME_LEN): New. - -2020-08-10 Przemyslaw Wirkus - - * opcode/aarch64.h (aarch64_sys_reg_deprecated_p): Functions - paramaters changed. - (aarch64_sys_reg_supported_p): Function removed. - (aarch64_sys_ins_reg_supported_p): Functions paramaters changed. - -2020-07-28 Caroline Tice - - * dwarf2.h (enum dwarf_sect_v5): A new enum section for the - sections in a DWARF 5 DWP file (DWP version 5). - -2020-07-22 Nick Alcock - - * ctf-api.h (CTF_LINK_NONDEDUP): New, turn off the - deduplicator. - -2020-07-22 Nick Alcock - - * ctf-api.h (CTF_LINK_OMIT_VARIABLES_SECTION): New. - -2020-07-22 Nick Alcock - - * ctf-api.h (CTF_LINK_SHARE_DUPLICATED): No longer unimplemented. - -2020-07-22 Nick Alcock - - * ctf-api.h (ctf_link_variable_filter_t): New. - (ctf_link_set_variable_filter): Likewise. - -2020-07-22 Nick Alcock - - * ctf-api.h (CTF_LINK_EMPTY_CU_MAPPINGS): New. - -2020-07-22 Nick Alcock - - * ctf-api.h (ECTF_NEEDSBFD): New. - (ECTF_NERR): Adjust. - (ctf_link): Rename share_mode arg to flags. - -2020-07-22 Nick Alcock - - * ctf-api.h (ECTF_INTERNAL): Adjust error text. - (ctf_errwarning_next): New. - -2020-07-22 Nick Alcock - - * ctf-api.h (ECTF_FLAGS): New. - (ECTF_NERR): Adjust. - * ctf.h (CTF_F_MAX): New. - -2020-07-22 Nick Alcock - - * ctf-api.h (ECTF_NEXT_END): New error. - (ECTF_NEXT_WRONGFUN): Likewise. - (ECTF_NEXT_WRONGFP): Likewise. - (ECTF_NERR): Adjust. - (ctf_next_t): New. - (ctf_next_create): New prototype. - (ctf_next_destroy): Likewise. - (ctf_next_copy): Likewise. - (ctf_member_next): Likewise. - (ctf_enum_next): Likewise. - (ctf_type_next): Likewise. - (ctf_label_next): Likewise. - (ctf_variable_next): Likewise. - -2020-07-22 Nick Alcock - - * ctf-api.h (ctf_ref): New. - -2020-07-22 Nick Alcock - - * ctf-api.h (ctf_archive_count): New. - -2020-07-22 Nick Alcock - - * ctf-api.h (ctf_member_count): New. - -2020-07-22 Nick Alcock - - * ctf-api.h (ctf_type_kind_forwarded): New. - -2020-07-22 Nick Alcock - - * ctf-api.c (ctf_type_name_raw): New. - -2020-07-22 Nick Alcock - - * ctf-api.h (ECTF_*): Improve comments. - (ECTF_NERR): New. - -2020-07-22 Nick Alcock - - * ctf-api.h: Fix typos in comments. - -2020-07-22 H.J. Lu - - PR ld/26262 - PR ld/26267 - * bfdlink.h (bfd_link_info): Add lto_all_symbols_read. - -2020-07-11 H.J. Lu - - * elf/common.h (GNU_PROPERTY_X86_FEATURE_2_TMM): New. - -2020-07-09 John Baldwin - - * elf/common.h (AT_FREEBSD_ARGC, AT_FREEBSD_ARGV, AT_FREEBSD_ENVC) - (AT_FREEBSD_ENVV, AT_FREEBSD_PS_STRINGS): Define. - -2020-07-09 Alan Modra - - * coff/powerpc.h: Delete. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-06-30 Nelson Chu - - * opcode/riscv-opc.h: Support the unprivileged CSR. The versions - of the unprivileged CSR should be PRIV_SPEC_CLASS_NONE for now. - * opcode/riscv.h (enum riscv_csr_class): Add CSR_CLASS_DEBUG. - -2020-06-30 Nelson Chu - - * opcode/riscv-opc.h: Cleanup and remove the unused macros. - -2020-06-29 Alan Modra - - * coff/internal.h: Use C style comments. - * coff/pe.h: Likewise. - * elf/ppc64.h: Likewise. - -2020-06-26 Nick Alcock - - * ctf-api.h (ctf_arc_bufopen): New. - -2020-06-26 Pat Bernardi - - * elf/m68k.h: Add enum for GNU object attribute with floating point - tag name and values. - -2020-06-25 Nick Clifton - - * libiberty.h (bsearch_r): Remove use of the register keyword from - the prototype. - -2020-06-24 H.J. Lu - - Sync with GCC - 2020-06-23 Nick Alcock - - * libiberty.h (bsearch_r): New. - - 2020-04-17 Martin Liska - Jonathan Yong <10walls@gmail.com> - - PR gcov-profile/94570 - * filenames.h (defined): Do not define HAVE_DOS_BASED_FILE_SYSTEM - for CYGWIN. - -2020-06-22 Alex Coplan - - * opcode/aarch64.h (AARCH64_FEATURE_SHA2): Normalize. - (AARCH64_FEATURE_AES): Likewise. - (AARCH64_FEATURE_V8_4): Likewise. - (AARCH64_FEATURE_SM4): Likewise. - (AARCH64_FEATURE_SHA3): Likewise. - (AARCH64_FEATURE_V8): Likewise. - (AARCH64_FEATURE_V8_2): Likewise. - (AARCH64_FEATURE_V8_3): Likewise. - (AARCH64_FEATURE_FP): Likewise. - (AARCH64_FEATURE_SIMD): Likewise. - (AARCH64_FEATURE_CRC): Likewise. - (AARCH64_FEATURE_LSE): Likewise. - (AARCH64_FEATURE_PAN): Likewise. - (AARCH64_FEATURE_LOR): Likewise. - (AARCH64_FEATURE_RDMA): Likewise. - (AARCH64_FEATURE_V8_1): Likewise. - (AARCH64_FEATURE_F16): Likewise. - (AARCH64_FEATURE_RAS): Likewise. - (AARCH64_FEATURE_PROFILE): Likewise. - (AARCH64_FEATURE_SVE): Likewise. - (AARCH64_FEATURE_RCPC): Likewise. - (AARCH64_FEATURE_COMPNUM): Likewise. - (AARCH64_FEATURE_DOTPROD): Likewise. - (AARCH64_FEATURE_F16_FML): Likewise. - (AARCH64_FEATURE_V8_5): Likewise. - (AARCH64_FEATURE_V8_6): Likewise. - (AARCH64_FEATURE_BFLOAT16): Likewise. - (AARCH64_FEATURE_FLAGMANIP): Likewise. - (AARCH64_FEATURE_FRINTTS): Likewise. - (AARCH64_FEATURE_SB): Likewise. - (AARCH64_FEATURE_PREDRES): Likewise. - (AARCH64_FEATURE_CVADP): Likewise. - (AARCH64_FEATURE_RNG): Likewise. - (AARCH64_FEATURE_BTI): Likewise. - (AARCH64_FEATURE_SCXTNUM): Likewise. - (AARCH64_FEATURE_ID_PFR2): Likewise. - (AARCH64_FEATURE_SSBS): Likewise. - (AARCH64_FEATURE_MEMTAG): Likewise. - (AARCH64_FEATURE_TME): Likewise. - (AARCH64_FEATURE_I8MM): Likewise. - (AARCH64_FEATURE_F32MM): Likewise. - (AARCH64_FEATURE_F64MM): Likewise. - (AARCH64_FEATURE_SVE2): Likewise. - (AARCH64_FEATURE_SVE2_AES): Likewise. - (AARCH64_FEATURE_SVE2_BITPERM): Likewise. - (AARCH64_FEATURE_SVE2_SM4): Likewise. - (AARCH64_FEATURE_SVE2_SHA3): Likewise. - -2020-06-22 Saagar Jha - - * mach-o/loader.h: Add declarations of two new Mach-O load - commands. - -2020-06-22 Nelson Chu - - * opcode/riscv.h (riscv_get_priv_spec_class): Move the function - forward declarations to bfd/elfxx-riscv.h. - (riscv_get_priv_spec_name): Likewise. - -2020-06-15 Max Filippov - - * elf/xtensa.h (xtensa_abi_choice): New declaration. - -2020-06-12 Roland McGrath - - * bfdlink.h (struct bfd_link_info): New field start_stop_visibility. - -2020-06-12 Nelson Chu - - * opcode/riscv-opc.h: Update the defined versions of CSR from - PRIV_SPEC_CLASS_1P9 to PRIV_SPEC_CLASS_1P9P1. Also, drop the - MISA DECLARE_CSR_ALIAS since it's aborted version is v1.9. - * opcode/riscv.h (enum riscv_priv_spec_class): Remove - PRIV_SPEC_CLASS_1P9. - -2020-06-11 Alex Coplan - - * opcode/aarch64.h (aarch64_sys_reg): Add required features to struct - describing system registers. - -2020-06-11 Alan Modra - - * elf/mips.h (Elf32_RegInfo): Use fixed width integer types. - (Elf64_Internal_RegInfo, Elf_Internal_Options): Likewise. - -2020-06-06 Alan Modra - - * elf/ppc64.h (elf_ppc64_reloc_type): Rename - R_PPC64_GOT_TLSGD34 to R_PPC64_GOT_TLSGD_PCREL34, - R_PPC64_GOT_TLSLD34 to R_PPC64_GOT_TLSLD_PCREL34, - R_PPC64_GOT_TPREL34 to R_PPC64_GOT_TPREL_PCREL34, and - R_PPC64_GOT_DTPREL34 to R_PPC64_GOT_DTPREL_PCREL34. - -2020-06-04 Jose E. Marchesi - - * opcode/cgen.h: Get an `endian' argument in both - cgen_get_insn_value and cgen_put_insn_value. - -2020-06-04 Jose E. Marchesi - - * opcode/cgen.h (enum cgen_cpu_open_arg): New value - CGEN_CPU_OPEN_INSN_ENDIAN. - -2020-06-03 Nelson Chu - - * opcode/riscv.h: Remove #include "bfd.h". And change the return - types of riscv_get_isa_spec_class and riscv_get_priv_spec_class - from bfd_boolean to int. - -2020-05-28 Alan Modra - - PR 26044 - * opcode/tilepro.h (TILEPRO_NUM_PIPELINE_ENCODINGS): Move to - tilepro_pipeline enum. - -2020-05-27 H.J. Lu - - PR ld/22909 - * bfdlink.h (textrel_check_method): New enum. - (bfd_link_textrel_check): New. - (bfd_link_info): Replace warn_shared_textrel and error_textrel - with textrel_check. - -2020-05-25 H.J. Lu - - * elf/common.h: Update comments for ET_EXEC and ET_DYN. - -2020-05-20 Nelson Chu - - * opcode/riscv.h: Include "bfd.h" to support bfd_boolean. - (enum riscv_isa_spec_class): New enum class. All supported ISA spec - belong to one of the class - (struct riscv_ext_version): New structure holds version information - for the specific ISA. - * opcode/riscv-opc.h (DECLARE_CSR): There are two version information, - define_version and abort_version. The define_version means which - privilege spec is started to define the CSR, and the abort_version - means which privilege spec is started to abort the CSR. If the CSR is - valid for the newest spec, then the abort_version should be - PRIV_SPEC_CLASS_DRAFT. - (DECLARE_CSR_ALIAS): Same as DECLARE_CSR, but only for the obselete CSR. - * opcode/riscv.h (enum riscv_priv_spec_class): New enum class. Define - the current supported privilege spec versions. - (struct riscv_csr_extra): Add new fields to store more information - about the CSR. We use these information to find the suitable CSR - address when user choosing a specific privilege spec. - -2020-05-19 Alexander Fedotov - - PR 25992 - * opcode/arm.h (ARM_EXT2_V8R): Define. Modified ARM_AEXT2_V8R. - -2020-05-11 Alan Modra - - * opcode/ppc.h (PPC_OPERAND_ACC): Define. Renumber following - PPC_OPERAND defines. - -2020-05-11 Alan Modra - - * elf/ppc64.h: Update comment. - * opcode/ppc.h (PPC_OPCODE_POWER10): Rename from PPC_OPCODE_POWERXX. - -2020-04-30 Alex Coplan - - * opcode/aarch64.h (enum aarch64_opnd): Add - AARCH64_OPND_UNDEFINED. - -2020-04-23 Anton Kolesov - - * elf/common.h (NT_ARC_V2): New macro definitions. - -2020-04-22 Max Filippov - - PR ld/25861 - * elf/xtensa.h (elf_xtensa_reloc_type): New entries for - R_XTENSA_PDIFF{8,16,32} and R_XTENSA_NDIFF{8,16,32}. - -2020-04-21 Alan Modra - - * elf/sh.h (STO_SH5_ISA32, SHF_SH5_ISA32, SHF_SH5_ISA32_MIXED), - (SHT_SH5_CR_SORTED, STT_DATALABEL): Delete. - -2020-04-10 Fangrui Song - - PR binutils/24613 - * bfdlink.h (enum report_method): Delete RM_GENERATE_WARNING and - RM_GENERATE_ERROR. Add RM_DIAGNOSE. - (struct bfd_link_info): Add warn_unresolved_syms. - -2020-04-14 Stephen Casner - - PR ld/25677 - * aout/aout64.h (N_DATADDR): Add IMAGIC case. - -2020-04-02 Jan W. Jagersma - - * coff/go32exe.h: Remove file. - * coff/internal.h (struct internal_filehdr): Remove field - go32stub. Remove flag F_GO32STUB. - -2020-04-01 Martin Liska - Maciej W. Rozycki - - PR lto/94249 - * plugin-api.h: Fix a typo. - -2020-03-30 Nelson Chu - - * opcode/riscv-opc.h: Update CSR to 1.11. - -2020-03-26 John Baldwin - - * elf/common.h (AT_FREEBSD_BSDFLAGS): Define. - -2020-03-24 Martin Liska - - PR lto/94249 - * plugin-api.h: Add more robust endianess detection. - -2020-03-21 Martin Liska - - * plugin-api.h (enum ld_plugin_symbol_type): Remove - comma after last value of an enum. - * lto-symtab.h (enum gcc_plugin_symbol_type): Likewise. - -2020-03-19 Martin Liska - - * lto-symtab.h (enum gcc_plugin_symbol_type): New. - (enum gcc_plugin_symbol_section_kind): Likewise. - -2020-03-19 Martin Liska - - * plugin-api.h (struct ld_plugin_symbol): Split - int def into 4 char fields. - (enum ld_plugin_symbol_type): New. - (enum ld_plugin_symbol_section_kind): New. - (enum ld_plugin_tag): Add LDPT_ADD_SYMBOLS_V2. - -2020-03-13 Kamil Rytarowski - - * elf/common.h (NT_NETBSDCORE_LWPSTATUS): New define. - -2020-03-13 Kamil Rytarowski - - * elf/common.h (NT_NETBSDCORE_AUXV): New define. - -2020-03-13 Christophe Lyon - - * bfdlink.h (bfd_link_info): Add non_contiguous_regions and - non_contiguous_regions_warnings fields. - -2020-03-13 Christian Eggers - - * bfdlink.h (struct bfd_link_order): Add unit (bytes/octets) to - offset and size members. - * elf/internal.h (struct elf_internal_phdr): Likewise for - p_align member. - (struct elf_segment_map): Likewise for p_paddr and p_size - members - -2020-03-13 Christian Eggers - - * elf/internal.h (struct elf_internal_phdr): Add unit (octets) - to several member field comments. - (Elf_Internal_Shdr): likewise. - -2020-03-10 Alan Modra - - * som/aout.h (SOM_AUX_ID_MANDATORY, SOM_SPACE_IS_LOADABLE), - (SOM_SYMBOL_HIDDEN, SOM_SYMBOL_HAS_LONG_RETURN): Use 1u << 31. - * som/lst.h (LST_SYMBOL_HIDDEN): Likewise. - -2020-03-03 Luis Machado - - * elf/common.h (AT_L1I_CACHESIZE, AT_L1I_CACHEGEOMETRY) - (AT_L1D_CACHESIZE, AT_L1D_CACHEGEOMETRY, AT_L2_CACHESIZE) - (AT_L2_CACHEGEOMETRY, AT_L3_CACHESIZE, AT_L3_CACHEGEOMETRY) - (AT_MINSIGSTKSZ): New defines, imported from glibc. - -2020-02-25 Andrew Burgess - - Import from gcc mainline: - 2020-02-05 Andrew Burgess - - * hashtab.h (htab_remove_elt): Make a parameter const. - (htab_remove_elt_with_hash): Likewise. - -2020-02-20 Nelson Chu - - * opcode/riscv-opc.h: Extend DECLARE_CSR and DECLARE_CSR_ALIAS to - record riscv_csr_class. - -2020-02-10 Stam Markianos-Wright - Matthew Malcomson - - * opcode/arm.h (ARM_EXT2_CDE): New extension macro. - (ARM_EXT2_CDE0): New extension macro. - (ARM_EXT2_CDE1): New extension macro. - (ARM_EXT2_CDE2): New extension macro. - (ARM_EXT2_CDE3): New extension macro. - (ARM_EXT2_CDE4): New extension macro. - (ARM_EXT2_CDE5): New extension macro. - (ARM_EXT2_CDE6): New extension macro. - (ARM_EXT2_CDE7): New extension macro. - -2020-02-07 Sergey Belyashov - - PR 25469 - * coff/internal.h (R_IMM16BE): Define. - * elf/z80.h (EF_Z80_MACH_Z80N): Define. - (R_Z80_16_BE): New reloc. - -2020-02-04 Alan Modra - - * opcode/d30v.h (struct pd_reg): Make value field unsigned. - -2020-01-16 Jon Turney - - * coff/internal.h (PE_IMAGE_DEBUG_TYPE_VC_FEATURE) - (PE_IMAGE_DEBUG_TYPE_POGO, PE_IMAGE_DEBUG_TYPE_ILTCG) - (PE_IMAGE_DEBUG_TYPE_MPX, PE_IMAGE_DEBUG_TYPE_REPRO): Add. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-17 Nick Clifton - - * Import from gcc mainline: - 2019-06-10 Martin Liska - - * ansidecl.h (ATTRIBUTE_WARN_UNUSED_RESULT): New macro. - * libiberty.h (xmalloc): Use it. - (xrealloc): Likewise. - (xcalloc): Likewise. - (xstrdup): Likewise. - (xstrndup): Likewise. - (xmemdup): Likewise. - - 2019-06-10 Martin Liska - - * ansidecl.h: - (ATTRIBUTE_RESULT_SIZE_1): Define new macro. - (ATTRIBUTE_RESULT_SIZE_2): Likewise. - (ATTRIBUTE_RESULT_SIZE_1_2): Likewise. - * libiberty.h (xmalloc): Add RESULT_SIZE attribute. - (xrealloc): Likewise. - (xcalloc): Likewise. - - 2019-11-16 Tim Ruehsen - - * demangle.h (struct demangle_component): Add member - d_counting. - - 2019-11-16 Eduard-Mihai Burtescu - - * demangle.h (rust_demangle_callback): Add. - - 2019-07-18 Eduard-Mihai Burtescu - - * demangle.h (rust_is_mangled): Move to libiberty/rust-demangle.h. - (rust_demangle_sym): Move to libiberty/rust-demangle.h. - -2020-01-16 Andre Vieira - - PR 25376 - * opcodes/arm.h (FPU_MVE, FPU_MVE_FPU): Move these features to... - (ARM_EXT2_MVE, ARM_EXT2_MVE_FP): ... the CORE_HIGH space. - (ARM_ANY): Redefine to not include any MVE bits. - (ARM_FEATURE_ALL): Removed. - -2020-01-15 Jozef Lawrynowicz - - * opcode/msp430.h (enum msp430_expp_e): New. - (struct msp430_operand_s): Add expp member to struct. - -2020-01-13 Claudiu Zissulescu - - * elf/arc-cpu.def: Update ARC cpu list. - -2020-01-13 Alan Modra - - * opcode/tic4x.h (EXTR): Delete. - (EXTRU, EXTRS, INSERTU, INSERTS): Rewrite without zero/sign - extension using shifts. Do trim INSERTU value to specified bitfield. - -2020-01-10 Alan Modra - - * opcode/spu.h: Formatting. - (UNSIGNED_EXTRACT): Use 1u. - (SIGNED_EXTRACT): Don't sign extend with shifts. - (DECODE_INSN_I9a, DECODE_INSN_I9b): Avoid left shift of signed value. - Keep result signed. - (DECODE_INSN_U9a, DECODE_INSN_U9b): Delete. - -2020-01-07 Shahab Vahedi - - * opcode/arc.h (insn_class_t): Add 'LLOCK' and 'SCOND'. - -2020-01-02 Sergey Belyashov - - * coff/internal.h: Add defintions of Z80 reloc names. - -2020-01-02 Christian Biesinger - - * opcode/s12z.h: Undef REG_Y. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2019 +For older changes see ChangeLog-2020 -Copyright (C) 2020 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/include/ChangeLog-2020 b/include/ChangeLog-2020 new file mode 100644 index 00000000000..976b36105e3 --- /dev/null +++ b/include/ChangeLog-2020 @@ -0,0 +1,1020 @@ +2020-12-23 H.J. Lu + + * elf/common.h (GNU_PROPERTY_X86_FEATURE_1_LAM_U48): New. + (GNU_PROPERTY_X86_FEATURE_1_LAM_U57): Likewise. + +2020-12-18 Alan Modra + + * xtensa-isa-internal.h (xtisa_errno, xtisa_error_msg): Delete. + +2020-12-18 Alan Modra + + * opcode/arc-attrs.h (CONFLICT_LIST): Make const. + +2020-12-16 Alan Modra + + * bfdlink.h (struct bfd_link_info): Add maxpagesize and + commonpagesize. + +2020-12-16 Alan Modra + + * xtensa-isa-internal.h (xtensa_format_internal), + (xtensa_slot_internal, xtensa_operand_internal), + (xtensa_arg_internal, xtensa_iclass_internal), + (xtensa_opcode_internal, xtensa_regfile_internal), + (xtensa_interface_internal, xtensa_funcUnit_internal), + (xtensa_state_internal, xtensa_sysreg_internal): Constify. + +2020-12-15 Vivek Das Mohapatra + + * elf/common.h (DT_GNU_FLAGS_1, DF_GNU_1_UNIQUE): Define. + * bfdlink.h (struct bfd_link_info): New field gnu_flags_1. + +2020-12-11 Cary Coutant + + * elf/common.h: Update list of e_machine values. + +2020-12-10 Nelson Chu + + * opcode/riscv.h (M_ZEXTH, M_ZEXTW, M_SEXTB, M_SEXTH.): Added. + +2020-12-10 Nelson Chu + + * opcode/riscv.h: Add INSN_CLASS_ZICSR and INSN_CLASS_ZIFENCEI. + +2020-12-07 Nick Clifton + + * elf/common.h (SHF_GNU_BUILD_NOTE): Delete. + +2020-12-01 Nelson Chu + + * opcode/riscv.h (RISCV_UNKNOWN_VERSION): added. + +2020-12-01 Nelson Chu + + * opcode/riscv.h (riscv_ext_version): + Change the version type from unsigned to int. + +2020-11-23 Nick Alcock + + * ctf-api.h: Style nit: remove () on function names in comments. + (ctf_sect_t): Mention endianness concerns. + (ctf_symsect_endianness): New declaration. + (ctf_arc_symsect_endianness): Likewise. + +2020-11-20 Nick Alcock + + * ctf-api.h (ctf_getsymsect): New. + (ctf_getstrsect): Likewise. + +2020-11-20 Nick Alcock + + * ctf-api.h (ctf_arc_lookup_symbol): New. + (ctf_arc_flush_caches): Likewise. + * ctf.h: Document new auto-ctf_import behaviour. + +2020-11-20 Nick Alcock + + * ctf-api.h (ctf_symbol_next): New. + (ctf_add_objt_sym): Likewise. + (ctf_add_func_sym): Likewise. + * ctf.h: Document new function info section format. + (CTF_F_NEWFUNCINFO): New. + (CTF_F_IDXSORTED): New. + (CTF_F_MAX): Adjust accordingly. + +2020-11-20 Nick Alcock + + * bfdlink.h (struct elf_sym_strtab): Replace with... + (struct elf_internal_sym): ... this. + (struct bfd_link_callbacks) : Take only a + symstrtab argument. + : New. + : Likewise. + * ctf-api.h (struct ctf_link_sym) : New. + : Likewise. + : Likewise. + (ctf_link_iter_symbol_f): Removed. + (ctf_link_shuffle_syms): Remove most parameters, just takes a + ctf_dict_t now. + (ctf_link_add_linker_symbol): New, split from + ctf_link_shuffle_syms. + * ctf.h (CTF_F_DYNSTR): New. + (CTF_F_MAX): Adjust. + +2020-11-20 Nick Alcock + + * ctf-api.h (ctf_arc_open_by_name): Rename to... + (ctf_dict_open): ... this, keeping compatibility function. + (ctf_arc_open_by_name_sections): Rename to... + (ctf_dict_open_sections): ... this, keeping compatibility function. + +2020-11-20 Nick Alcock + + * ctf-api.h (ctf_file_t): Rename to... + (ctf_dict_t): ... this. Keep ctf_file_t around for compatibility. + (struct ctf_file): Likewise rename to... + (struct ctf_dict): ... this. + (ctf_file_close): Rename to... + (ctf_dict_close): ... this, keeping compatibility function. + (ctf_parent_file): Rename to... + (ctf_parent_dict): ... this, keeping compatibility function. + All callers adjusted. + * ctf.h: Rename references to ctf_file_t to ctf_dict_t. + (struct ctf_archive) : Rename to... + : ... this. + +2020-11-18 Jozef Lawrynowicz + + * elf/common.h (SHF_GNU_RETAIN): Define. + +2020-11-16 Przemyslaw Wirkus + + * opcode/aarch64.h (AARCH64_FEATURE_FLAGM): Add new feature. + (AARCH64_FEATURE_FLAGMANIP): Update comment. + (AARCH64_ARCH_V8_4): Add back FLAGM to Armv8.4-A. + +2020-11-09 Spencer E. Olson + + * opcode/pru.h: Add LMBD (left-most bit detect) opcode index. + +2020-11-09 Przemyslaw Wirkus + + * opcode/aarch64.h (enum aarch64_opnd): Add new operand AARCH64_OPND_Rt_LS64. + +2020-11-06 Przemyslaw Wirkus + + * opcode/aarch64.h (AARCH64_FEATURE_PAC): Add new feature. + (AARCH64_ARCH_V8_3): Add back PAC to Armv8.3-A. + +2020-11-04 Przemyslaw Wirkus + + * opcode/aarch64.h (AARCH64_ARCH_V8): Add RAS to Armv8-A. + (AARCH64_ARCH_V8_2): Remove RAS from Armv8.2-A set. + +2020-11-03 Przemyslaw Wirkus + + * opcode/aarch64.h (AARCH64_FEATURE_LS64): New +ls64 feature flag. + (AARCH64_ARCH_V8_7): Add LS64 as part of Armv8.7-a. + +2020-10-30 H.J. Lu + + PR gas/26703 + * elf/common.h (GNU_PROPERTY_X86_ISA_1_BASELINE): New. + (GNU_PROPERTY_X86_ISA_1_V2): Uppdated. + (GNU_PROPERTY_X86_ISA_1_V3): Likewise. + (GNU_PROPERTY_X86_ISA_1_V4): Likewise. + +2020-10-27 Przemyslaw Wirkus + + * opcode/aarch64.h (AARCH64_FEATURE_CSRE): New -march feature. +(enum aarch64_opnd): New CSR instruction field AARCH64_OPND_CSRE_CSR. + +2020-10-26 Cooper Qu + + * opcode/csky.h (CSKY_VERSION_V1): New, currently used. + (CSKY_VERSION_V2): New. + (CSKY_VERSION_V3): New. + +2020-10-23 Przemyslaw Wirkus + + * opcode/aarch64.h (enum aarch64_opnd): New operand + AARCH64_OPND_BARRIER_DSB_NXS. + (aarch64_barrier_dsb_nxs_options): Declare DSB nXS options. + +2020-10-21 Tom Tromey + + * ctf-api.h (_CTF_ERRORS): New macro. + +2020-10-16 Nelson Chu + + * elf/riscv.h: Add R_RISCV_IRELATIVE to 58. + +2020-10-16 Przemyslaw Wirkus + + * opcode/aarch64.h (AARCH64_FEATURE_V8_7): New feature bitmask. + (AARCH64_ARCH_V8_7): New arch feature set. + +2020-10-09 H.J. Lu + + PR gas/26703 + * elf/common.h (GNU_PROPERTY_X86_ISA_1_USED): Renamed to ... + (GNU_PROPERTY_X86_COMPAT_2_ISA_1_USED): This. + (GNU_PROPERTY_X86_ISA_1_NEEDED): Renamed to ... + (GNU_PROPERTY_X86_COMPAT_2_ISA_1_NEEDED): This. + (GNU_PROPERTY_X86_ISA_1_XXX): Renamed to ... + (GNU_PROPERTY_X86_COMPAT_2_ISA_1_XXX): This. + (GNU_PROPERTY_X86_ISA_1_NEEDED): New. + (GNU_PROPERTY_X86_ISA_1_USED): Likewise. + (GNU_PROPERTY_X86_ISA_1_V2): Likewise. + (GNU_PROPERTY_X86_ISA_1_V3): Likewise. + (GNU_PROPERTY_X86_ISA_1_V4): Likewise. + (GNU_PROPERTY_X86_FEATURE_2_MASK): Likewise. + +2020-09-23 Mark Wielaard + + Sync with GCC + * dwarf2.def: Add DWARF5 Unit type header encoding macros + DW_UT_FIRST, DW_UT and DW_UT_END. + * dwarf2.h (enum dwarf_unit_type): Removed and define using + DW_UT_FIRST, DW_UT and DW_UT_END macros. + (get_DW_UT_name): New function declaration. + +2020-09-12 H.J. Lu + + PR ld/26391 + * bfdlink.h (bfd_link_info): Add unique_symbol. + +2020-09-11 Felix Willgerodt + + Sync with GCC + 2020-09-08 Felix Willgerodt + + * floatformat.h (floatformat_bfloat16_big): New. + (floatformat_bfloat16_little): New. + +2020-09-12 Cooper Qu + + * opcode/csky.h (CSKYV1_ISA_E1): Convert to bfd_uint64_t type. + (CSKYV2_ISA_E1): Likewise. + (CSKYV2_ISA_1E2>): Likewise. + (CSKYV2_ISA_2E3>): Likewise. + (CSKYV2_ISA_3E7>): Likewise. + (CSKYV2_ISA_7E10): Likewise. + (CSKYV2_ISA_3E3R1): Likewise. + (CSKYV2_ISA_3E3R2): Likewise. + (CSKYV2_ISA_10E60): Likewise. + (CSKYV2_ISA_3E3R3): Likewise. + (CSKY_ISA_TRUST): Likewise. + (CSKY_ISA_CACHE): Likewise. + (CSKY_ISA_NVIC): Likewise. + (CSKY_ISA_CP): Likewise. + (CSKY_ISA_MP): Likewise. + (CSKY_ISA_MP_1E2): Likewise. + (CSKY_ISA_JAVA): Likewise. + (CSKY_ISA_MAC): Likewise. + (CSKY_ISA_MAC_DSP): Likewise. + (CSKY_ISA_DSP): Likewise. + (CSKY_ISA_DSP_1E2): Likewise. + (CSKY_ISA_DSP_ENHANCE): Likewise. + (CSKY_ISA_DSPE60): Likewise. + (CSKY_ISA_FLOAT_E1): Likewise. + (CSKY_ISA_FLOAT_1E2): Likewise. + (CSKY_ISA_FLOAT_1E3): Likewise. + (CSKY_ISA_FLOAT_3E4): Likewise. + (CSKY_ISA_FLOAT_7E60): Likewise. + (CSKY_ISA_VDSP): Likewise. + (CSKY_ISA_VDSP_2): Likewise. + (CSKY_ARCH_804): Define. + (CSKY_ARCH_805): Define. + (CSKY_ARCH_800): Define. + +2020-09-11 H.J. Lu + + * elf/common.h (NT_X86_CET): New. + +2020-09-10 Cooper Qu + + * opcode/csky.h (CSKY_ARCH_804): Define. + (CSKY_ARCH_805): Define. + (CSKY_ARCH_800): Define. + +2020-09-10 Nick Clifton + + * opcode/csky.h (CSKY_ISA_FLOAT_7E60): Use a long long type for + this value. + +2020-09-07 Cooper Qu + + * opcode/csky.h (CSKY_ISA_DSPE60): Define. + +2020-09-07 Cooper Qu + + * opcode/csky.h (CSKY_ISA_FLOAT_7E60): Define. + +2020-09-08 Jozef Lawrynowicz + Kuan-Lin Chen + + * elf/msp430.h (elf_msp430_reloc_type): Add + R_MSP430_GNU_{SET,SUB}_ULEB128. + (elf_msp430x_reloc_type): Add R_MSP430X_GNU_{SET,SUB}_ULEB128. + +2020-09-08 Alex Coplan + + * opcode/aarch64.h (aarch64_sys_ins_reg_supported_p): Also take + system register name in order to simplify validation for v8-R. + (aarch64_print_operand): Also take CPU feature set, as disassembly for + system registers now depends on arch variant. + +2020-09-08 Alex Coplan + + * opcode/aarch64.h (AARCH64_FEATURE_V8_A): New. + (AARCH64_FEATURE_V8_R): New. + (AARCH64_ARCH_V8): Include new A-profile feature bit. + (AARCH64_ARCH_V8_R): New. + +2020-09-02 Alan Modra + + * opcode/v850.h (struct v850_operand ): Make param op an + unsigned long. + +2020-09-02 Cooper Qu + + * opcode/csky.h (CSKYV2_ISA_3E3R3): Define. + +2020-08-31 Alan Modra + + PR 26493 + * opcode/riscv.h (OP_MASK_CSR, OP_MASK_CUSTOM_IMM) + (OP_MASK_FUNCT7, OP_MASK_RS3): Make unsigned. + +2020-08-31 Alan Modra + + PR 26457 + * som/aout.h (SOM_SUBSPACE_ACCESS_CONTROL_BITS_MASK): Make unsigned. + (SOM_SUBSPACE_MEMORY_RESIDENT, SOM_SUBSPACE_DUP_COMMON) + (SOM_SUBSPACE_IS_COMMON, SOM_SUBSPACE_IS_LOADABLE) + (SOM_SUBSPACE_QUADRANT_MASK, SOM_SUBSPACE_INITIALLY_FROZEN) + (SOM_SUBSPACE_IS_FIRST, SOM_SUBSPACE_CODE_ONLY) + (SOM_SUBSPACE_SORT_KEY_MASK, SOM_SUBSPACE_REPLICATE_INIT) + (SOM_SUBSPACE_CONTINUATION, SOM_SUBSPACE_IS_TSPECIFIC) + (SOM_SUBSPACE_IS_COMDAT): Likewise. + +2020-08-28 Cooper Qu + + * elf/csky.h (SHT_CSKY_ATTRIBUTES): Define. + (Tag_CSKY_ARCH_NAME): New enum constant. + (Tag_CSKY_CPU_NAME): Likewise. + (Tag_CSKY_ISA_FLAGS): Likewise. + (Tag_CSKY_DSP_VERSION): Likewise. + (Tag_CSKY_VDSP_VERSION): Likewise. + (Tag_CSKY_FPU_VERSION): Likewise. + (Tag_CSKY_FPU_ABI): Likewise. + (Tag_CSKY_FPU_ROUNDING): Likewise. + (Tag_CSKY_FPU_DENORMAL): Likewise. + (Tag_CSKY_FPU_Exception): Likewise. + (Tag_CSKY_FPU_NUMBER_MODULE): Likewise. + (Tag_CSKY_FPU_HARDFP): Likewise. + (Tag_CSKY_MAX): Likewise. + (VAL_CSKY_DSP_VERSION_EXTENSION): Likewise. + (VAL_CSKY_DSP_VERSION_2): Likewise. + (VAL_CSKY_VDSP_VERSION_1): Likewise. + (VAL_CSKY_VDSP_VERSION_2): Likewise. + (VAL_CSKY_FPU_ABI_SOFT): Likewise. + (VAL_CSKY_FPU_ABI_SOFTFP): Likewise. + (VAL_CSKY_FPU_ABI_HARD): Likewise. + (VAL_CSKY_FPU_HARDFP_HALF): Likewise. + (VAL_CSKY_FPU_HARDFP_SINGLE): Likewise. + (VAL_CSKY_FPU_HARDFP_DOUBLE): Likewise. + * opcode/csky.h (CSKY_ISA_VDSP_V2): Define. + CSKYV1_ISA_E1: Change to long constant type. + CSKYV2_ISA_E1: Likewise. + CSKYV2_ISA_1E2: Likewise. + CSKYV2_ISA_2E3: Likewise. + CSKYV2_ISA_3E7: Likewise. + CSKYV2_ISA_7E10: Likewise. + CSKYV2_ISA_3E3R1: Likewise. + CSKYV2_ISA_3E3R2: Likewise. + CSKYV2_ISA_10E60: Likewise. + CSKY_ISA_TRUST: Likewise. + CSKY_ISA_CACHE: Likewise. + CSKY_ISA_NVIC: Likewise. + CSKY_ISA_CP: Likewise. + CSKY_ISA_MP: Likewise. + CSKY_ISA_MP_1E2: Likewise. + CSKY_ISA_JAVA: Likewise. + CSKY_ISA_MAC: Likewise. + CSKY_ISA_MAC_DSP: Likewise. + CSKY_ISA_DSP: Likewise. + CSKY_ISA_DSP_1E2: Likewise. + CSKY_ISA_DSP_ENHANCE: Likewise. + CSKY_ISA_FLOAT_E1: Likewise. + CSKY_ISA_FLOAT_1E2: Likewise. + CSKY_ISA_FLOAT_1E3: Likewise. + CSKY_ISA_FLOAT_3E4: Likewise. + CSKY_ISA_VDSP: Likewise. + +2020-08-27 Nick Alcock + + * ctf-api.h (ctf_errwarning_next): New err parameter. + +2020-08-26 Nick Clifton + + PR 26405 + * elf/common.h (PT_OPENBSD_BOOTDATA): Define. + (PT_OPENBSD_RANDOMIZE): Define. + (PT_OPENBSD_WXNEEDED): Define. + +2020-08-26 Alan Modra + + PR 26458 + * elf/common.h (ELF32_R_INFO): Cast symbol index to unsigned. + +2020-08-24 Cooper Qu + + * opcode/csky.h (CSKYV2_ISA_10E60): New. + (CSKY_ARCH_860): New. + +2020-08-21 Cooper Qu + + * csky.h (CSKYV2_ISA_3E3R2): New. + +2020-08-21 Mark Wielaard + + * diagnostics.h (DIAGNOSTIC_IGNORE_DEPRECATED_REGISTER): Also define + for GCC 7.0 or higher. + +2020-08-10 Alex Coplan + + * opcode/aarch64.h (AARCH64_MAX_SYSREG_NAME_LEN): New. + +2020-08-10 Przemyslaw Wirkus + + * opcode/aarch64.h (aarch64_sys_reg_deprecated_p): Functions + paramaters changed. + (aarch64_sys_reg_supported_p): Function removed. + (aarch64_sys_ins_reg_supported_p): Functions paramaters changed. + +2020-07-28 Caroline Tice + + * dwarf2.h (enum dwarf_sect_v5): A new enum section for the + sections in a DWARF 5 DWP file (DWP version 5). + +2020-07-22 Nick Alcock + + * ctf-api.h (CTF_LINK_NONDEDUP): New, turn off the + deduplicator. + +2020-07-22 Nick Alcock + + * ctf-api.h (CTF_LINK_OMIT_VARIABLES_SECTION): New. + +2020-07-22 Nick Alcock + + * ctf-api.h (CTF_LINK_SHARE_DUPLICATED): No longer unimplemented. + +2020-07-22 Nick Alcock + + * ctf-api.h (ctf_link_variable_filter_t): New. + (ctf_link_set_variable_filter): Likewise. + +2020-07-22 Nick Alcock + + * ctf-api.h (CTF_LINK_EMPTY_CU_MAPPINGS): New. + +2020-07-22 Nick Alcock + + * ctf-api.h (ECTF_NEEDSBFD): New. + (ECTF_NERR): Adjust. + (ctf_link): Rename share_mode arg to flags. + +2020-07-22 Nick Alcock + + * ctf-api.h (ECTF_INTERNAL): Adjust error text. + (ctf_errwarning_next): New. + +2020-07-22 Nick Alcock + + * ctf-api.h (ECTF_FLAGS): New. + (ECTF_NERR): Adjust. + * ctf.h (CTF_F_MAX): New. + +2020-07-22 Nick Alcock + + * ctf-api.h (ECTF_NEXT_END): New error. + (ECTF_NEXT_WRONGFUN): Likewise. + (ECTF_NEXT_WRONGFP): Likewise. + (ECTF_NERR): Adjust. + (ctf_next_t): New. + (ctf_next_create): New prototype. + (ctf_next_destroy): Likewise. + (ctf_next_copy): Likewise. + (ctf_member_next): Likewise. + (ctf_enum_next): Likewise. + (ctf_type_next): Likewise. + (ctf_label_next): Likewise. + (ctf_variable_next): Likewise. + +2020-07-22 Nick Alcock + + * ctf-api.h (ctf_ref): New. + +2020-07-22 Nick Alcock + + * ctf-api.h (ctf_archive_count): New. + +2020-07-22 Nick Alcock + + * ctf-api.h (ctf_member_count): New. + +2020-07-22 Nick Alcock + + * ctf-api.h (ctf_type_kind_forwarded): New. + +2020-07-22 Nick Alcock + + * ctf-api.c (ctf_type_name_raw): New. + +2020-07-22 Nick Alcock + + * ctf-api.h (ECTF_*): Improve comments. + (ECTF_NERR): New. + +2020-07-22 Nick Alcock + + * ctf-api.h: Fix typos in comments. + +2020-07-22 H.J. Lu + + PR ld/26262 + PR ld/26267 + * bfdlink.h (bfd_link_info): Add lto_all_symbols_read. + +2020-07-11 H.J. Lu + + * elf/common.h (GNU_PROPERTY_X86_FEATURE_2_TMM): New. + +2020-07-09 John Baldwin + + * elf/common.h (AT_FREEBSD_ARGC, AT_FREEBSD_ARGV, AT_FREEBSD_ENVC) + (AT_FREEBSD_ENVV, AT_FREEBSD_PS_STRINGS): Define. + +2020-07-09 Alan Modra + + * coff/powerpc.h: Delete. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-06-30 Nelson Chu + + * opcode/riscv-opc.h: Support the unprivileged CSR. The versions + of the unprivileged CSR should be PRIV_SPEC_CLASS_NONE for now. + * opcode/riscv.h (enum riscv_csr_class): Add CSR_CLASS_DEBUG. + +2020-06-30 Nelson Chu + + * opcode/riscv-opc.h: Cleanup and remove the unused macros. + +2020-06-29 Alan Modra + + * coff/internal.h: Use C style comments. + * coff/pe.h: Likewise. + * elf/ppc64.h: Likewise. + +2020-06-26 Nick Alcock + + * ctf-api.h (ctf_arc_bufopen): New. + +2020-06-26 Pat Bernardi + + * elf/m68k.h: Add enum for GNU object attribute with floating point + tag name and values. + +2020-06-25 Nick Clifton + + * libiberty.h (bsearch_r): Remove use of the register keyword from + the prototype. + +2020-06-24 H.J. Lu + + Sync with GCC + 2020-06-23 Nick Alcock + + * libiberty.h (bsearch_r): New. + + 2020-04-17 Martin Liska + Jonathan Yong <10walls@gmail.com> + + PR gcov-profile/94570 + * filenames.h (defined): Do not define HAVE_DOS_BASED_FILE_SYSTEM + for CYGWIN. + +2020-06-22 Alex Coplan + + * opcode/aarch64.h (AARCH64_FEATURE_SHA2): Normalize. + (AARCH64_FEATURE_AES): Likewise. + (AARCH64_FEATURE_V8_4): Likewise. + (AARCH64_FEATURE_SM4): Likewise. + (AARCH64_FEATURE_SHA3): Likewise. + (AARCH64_FEATURE_V8): Likewise. + (AARCH64_FEATURE_V8_2): Likewise. + (AARCH64_FEATURE_V8_3): Likewise. + (AARCH64_FEATURE_FP): Likewise. + (AARCH64_FEATURE_SIMD): Likewise. + (AARCH64_FEATURE_CRC): Likewise. + (AARCH64_FEATURE_LSE): Likewise. + (AARCH64_FEATURE_PAN): Likewise. + (AARCH64_FEATURE_LOR): Likewise. + (AARCH64_FEATURE_RDMA): Likewise. + (AARCH64_FEATURE_V8_1): Likewise. + (AARCH64_FEATURE_F16): Likewise. + (AARCH64_FEATURE_RAS): Likewise. + (AARCH64_FEATURE_PROFILE): Likewise. + (AARCH64_FEATURE_SVE): Likewise. + (AARCH64_FEATURE_RCPC): Likewise. + (AARCH64_FEATURE_COMPNUM): Likewise. + (AARCH64_FEATURE_DOTPROD): Likewise. + (AARCH64_FEATURE_F16_FML): Likewise. + (AARCH64_FEATURE_V8_5): Likewise. + (AARCH64_FEATURE_V8_6): Likewise. + (AARCH64_FEATURE_BFLOAT16): Likewise. + (AARCH64_FEATURE_FLAGMANIP): Likewise. + (AARCH64_FEATURE_FRINTTS): Likewise. + (AARCH64_FEATURE_SB): Likewise. + (AARCH64_FEATURE_PREDRES): Likewise. + (AARCH64_FEATURE_CVADP): Likewise. + (AARCH64_FEATURE_RNG): Likewise. + (AARCH64_FEATURE_BTI): Likewise. + (AARCH64_FEATURE_SCXTNUM): Likewise. + (AARCH64_FEATURE_ID_PFR2): Likewise. + (AARCH64_FEATURE_SSBS): Likewise. + (AARCH64_FEATURE_MEMTAG): Likewise. + (AARCH64_FEATURE_TME): Likewise. + (AARCH64_FEATURE_I8MM): Likewise. + (AARCH64_FEATURE_F32MM): Likewise. + (AARCH64_FEATURE_F64MM): Likewise. + (AARCH64_FEATURE_SVE2): Likewise. + (AARCH64_FEATURE_SVE2_AES): Likewise. + (AARCH64_FEATURE_SVE2_BITPERM): Likewise. + (AARCH64_FEATURE_SVE2_SM4): Likewise. + (AARCH64_FEATURE_SVE2_SHA3): Likewise. + +2020-06-22 Saagar Jha + + * mach-o/loader.h: Add declarations of two new Mach-O load + commands. + +2020-06-22 Nelson Chu + + * opcode/riscv.h (riscv_get_priv_spec_class): Move the function + forward declarations to bfd/elfxx-riscv.h. + (riscv_get_priv_spec_name): Likewise. + +2020-06-15 Max Filippov + + * elf/xtensa.h (xtensa_abi_choice): New declaration. + +2020-06-12 Roland McGrath + + * bfdlink.h (struct bfd_link_info): New field start_stop_visibility. + +2020-06-12 Nelson Chu + + * opcode/riscv-opc.h: Update the defined versions of CSR from + PRIV_SPEC_CLASS_1P9 to PRIV_SPEC_CLASS_1P9P1. Also, drop the + MISA DECLARE_CSR_ALIAS since it's aborted version is v1.9. + * opcode/riscv.h (enum riscv_priv_spec_class): Remove + PRIV_SPEC_CLASS_1P9. + +2020-06-11 Alex Coplan + + * opcode/aarch64.h (aarch64_sys_reg): Add required features to struct + describing system registers. + +2020-06-11 Alan Modra + + * elf/mips.h (Elf32_RegInfo): Use fixed width integer types. + (Elf64_Internal_RegInfo, Elf_Internal_Options): Likewise. + +2020-06-06 Alan Modra + + * elf/ppc64.h (elf_ppc64_reloc_type): Rename + R_PPC64_GOT_TLSGD34 to R_PPC64_GOT_TLSGD_PCREL34, + R_PPC64_GOT_TLSLD34 to R_PPC64_GOT_TLSLD_PCREL34, + R_PPC64_GOT_TPREL34 to R_PPC64_GOT_TPREL_PCREL34, and + R_PPC64_GOT_DTPREL34 to R_PPC64_GOT_DTPREL_PCREL34. + +2020-06-04 Jose E. Marchesi + + * opcode/cgen.h: Get an `endian' argument in both + cgen_get_insn_value and cgen_put_insn_value. + +2020-06-04 Jose E. Marchesi + + * opcode/cgen.h (enum cgen_cpu_open_arg): New value + CGEN_CPU_OPEN_INSN_ENDIAN. + +2020-06-03 Nelson Chu + + * opcode/riscv.h: Remove #include "bfd.h". And change the return + types of riscv_get_isa_spec_class and riscv_get_priv_spec_class + from bfd_boolean to int. + +2020-05-28 Alan Modra + + PR 26044 + * opcode/tilepro.h (TILEPRO_NUM_PIPELINE_ENCODINGS): Move to + tilepro_pipeline enum. + +2020-05-27 H.J. Lu + + PR ld/22909 + * bfdlink.h (textrel_check_method): New enum. + (bfd_link_textrel_check): New. + (bfd_link_info): Replace warn_shared_textrel and error_textrel + with textrel_check. + +2020-05-25 H.J. Lu + + * elf/common.h: Update comments for ET_EXEC and ET_DYN. + +2020-05-20 Nelson Chu + + * opcode/riscv.h: Include "bfd.h" to support bfd_boolean. + (enum riscv_isa_spec_class): New enum class. All supported ISA spec + belong to one of the class + (struct riscv_ext_version): New structure holds version information + for the specific ISA. + * opcode/riscv-opc.h (DECLARE_CSR): There are two version information, + define_version and abort_version. The define_version means which + privilege spec is started to define the CSR, and the abort_version + means which privilege spec is started to abort the CSR. If the CSR is + valid for the newest spec, then the abort_version should be + PRIV_SPEC_CLASS_DRAFT. + (DECLARE_CSR_ALIAS): Same as DECLARE_CSR, but only for the obselete CSR. + * opcode/riscv.h (enum riscv_priv_spec_class): New enum class. Define + the current supported privilege spec versions. + (struct riscv_csr_extra): Add new fields to store more information + about the CSR. We use these information to find the suitable CSR + address when user choosing a specific privilege spec. + +2020-05-19 Alexander Fedotov + + PR 25992 + * opcode/arm.h (ARM_EXT2_V8R): Define. Modified ARM_AEXT2_V8R. + +2020-05-11 Alan Modra + + * opcode/ppc.h (PPC_OPERAND_ACC): Define. Renumber following + PPC_OPERAND defines. + +2020-05-11 Alan Modra + + * elf/ppc64.h: Update comment. + * opcode/ppc.h (PPC_OPCODE_POWER10): Rename from PPC_OPCODE_POWERXX. + +2020-04-30 Alex Coplan + + * opcode/aarch64.h (enum aarch64_opnd): Add + AARCH64_OPND_UNDEFINED. + +2020-04-23 Anton Kolesov + + * elf/common.h (NT_ARC_V2): New macro definitions. + +2020-04-22 Max Filippov + + PR ld/25861 + * elf/xtensa.h (elf_xtensa_reloc_type): New entries for + R_XTENSA_PDIFF{8,16,32} and R_XTENSA_NDIFF{8,16,32}. + +2020-04-21 Alan Modra + + * elf/sh.h (STO_SH5_ISA32, SHF_SH5_ISA32, SHF_SH5_ISA32_MIXED), + (SHT_SH5_CR_SORTED, STT_DATALABEL): Delete. + +2020-04-10 Fangrui Song + + PR binutils/24613 + * bfdlink.h (enum report_method): Delete RM_GENERATE_WARNING and + RM_GENERATE_ERROR. Add RM_DIAGNOSE. + (struct bfd_link_info): Add warn_unresolved_syms. + +2020-04-14 Stephen Casner + + PR ld/25677 + * aout/aout64.h (N_DATADDR): Add IMAGIC case. + +2020-04-02 Jan W. Jagersma + + * coff/go32exe.h: Remove file. + * coff/internal.h (struct internal_filehdr): Remove field + go32stub. Remove flag F_GO32STUB. + +2020-04-01 Martin Liska + Maciej W. Rozycki + + PR lto/94249 + * plugin-api.h: Fix a typo. + +2020-03-30 Nelson Chu + + * opcode/riscv-opc.h: Update CSR to 1.11. + +2020-03-26 John Baldwin + + * elf/common.h (AT_FREEBSD_BSDFLAGS): Define. + +2020-03-24 Martin Liska + + PR lto/94249 + * plugin-api.h: Add more robust endianess detection. + +2020-03-21 Martin Liska + + * plugin-api.h (enum ld_plugin_symbol_type): Remove + comma after last value of an enum. + * lto-symtab.h (enum gcc_plugin_symbol_type): Likewise. + +2020-03-19 Martin Liska + + * lto-symtab.h (enum gcc_plugin_symbol_type): New. + (enum gcc_plugin_symbol_section_kind): Likewise. + +2020-03-19 Martin Liska + + * plugin-api.h (struct ld_plugin_symbol): Split + int def into 4 char fields. + (enum ld_plugin_symbol_type): New. + (enum ld_plugin_symbol_section_kind): New. + (enum ld_plugin_tag): Add LDPT_ADD_SYMBOLS_V2. + +2020-03-13 Kamil Rytarowski + + * elf/common.h (NT_NETBSDCORE_LWPSTATUS): New define. + +2020-03-13 Kamil Rytarowski + + * elf/common.h (NT_NETBSDCORE_AUXV): New define. + +2020-03-13 Christophe Lyon + + * bfdlink.h (bfd_link_info): Add non_contiguous_regions and + non_contiguous_regions_warnings fields. + +2020-03-13 Christian Eggers + + * bfdlink.h (struct bfd_link_order): Add unit (bytes/octets) to + offset and size members. + * elf/internal.h (struct elf_internal_phdr): Likewise for + p_align member. + (struct elf_segment_map): Likewise for p_paddr and p_size + members + +2020-03-13 Christian Eggers + + * elf/internal.h (struct elf_internal_phdr): Add unit (octets) + to several member field comments. + (Elf_Internal_Shdr): likewise. + +2020-03-10 Alan Modra + + * som/aout.h (SOM_AUX_ID_MANDATORY, SOM_SPACE_IS_LOADABLE), + (SOM_SYMBOL_HIDDEN, SOM_SYMBOL_HAS_LONG_RETURN): Use 1u << 31. + * som/lst.h (LST_SYMBOL_HIDDEN): Likewise. + +2020-03-03 Luis Machado + + * elf/common.h (AT_L1I_CACHESIZE, AT_L1I_CACHEGEOMETRY) + (AT_L1D_CACHESIZE, AT_L1D_CACHEGEOMETRY, AT_L2_CACHESIZE) + (AT_L2_CACHEGEOMETRY, AT_L3_CACHESIZE, AT_L3_CACHEGEOMETRY) + (AT_MINSIGSTKSZ): New defines, imported from glibc. + +2020-02-25 Andrew Burgess + + Import from gcc mainline: + 2020-02-05 Andrew Burgess + + * hashtab.h (htab_remove_elt): Make a parameter const. + (htab_remove_elt_with_hash): Likewise. + +2020-02-20 Nelson Chu + + * opcode/riscv-opc.h: Extend DECLARE_CSR and DECLARE_CSR_ALIAS to + record riscv_csr_class. + +2020-02-10 Stam Markianos-Wright + Matthew Malcomson + + * opcode/arm.h (ARM_EXT2_CDE): New extension macro. + (ARM_EXT2_CDE0): New extension macro. + (ARM_EXT2_CDE1): New extension macro. + (ARM_EXT2_CDE2): New extension macro. + (ARM_EXT2_CDE3): New extension macro. + (ARM_EXT2_CDE4): New extension macro. + (ARM_EXT2_CDE5): New extension macro. + (ARM_EXT2_CDE6): New extension macro. + (ARM_EXT2_CDE7): New extension macro. + +2020-02-07 Sergey Belyashov + + PR 25469 + * coff/internal.h (R_IMM16BE): Define. + * elf/z80.h (EF_Z80_MACH_Z80N): Define. + (R_Z80_16_BE): New reloc. + +2020-02-04 Alan Modra + + * opcode/d30v.h (struct pd_reg): Make value field unsigned. + +2020-01-16 Jon Turney + + * coff/internal.h (PE_IMAGE_DEBUG_TYPE_VC_FEATURE) + (PE_IMAGE_DEBUG_TYPE_POGO, PE_IMAGE_DEBUG_TYPE_ILTCG) + (PE_IMAGE_DEBUG_TYPE_MPX, PE_IMAGE_DEBUG_TYPE_REPRO): Add. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-17 Nick Clifton + + * Import from gcc mainline: + 2019-06-10 Martin Liska + + * ansidecl.h (ATTRIBUTE_WARN_UNUSED_RESULT): New macro. + * libiberty.h (xmalloc): Use it. + (xrealloc): Likewise. + (xcalloc): Likewise. + (xstrdup): Likewise. + (xstrndup): Likewise. + (xmemdup): Likewise. + + 2019-06-10 Martin Liska + + * ansidecl.h: + (ATTRIBUTE_RESULT_SIZE_1): Define new macro. + (ATTRIBUTE_RESULT_SIZE_2): Likewise. + (ATTRIBUTE_RESULT_SIZE_1_2): Likewise. + * libiberty.h (xmalloc): Add RESULT_SIZE attribute. + (xrealloc): Likewise. + (xcalloc): Likewise. + + 2019-11-16 Tim Ruehsen + + * demangle.h (struct demangle_component): Add member + d_counting. + + 2019-11-16 Eduard-Mihai Burtescu + + * demangle.h (rust_demangle_callback): Add. + + 2019-07-18 Eduard-Mihai Burtescu + + * demangle.h (rust_is_mangled): Move to libiberty/rust-demangle.h. + (rust_demangle_sym): Move to libiberty/rust-demangle.h. + +2020-01-16 Andre Vieira + + PR 25376 + * opcodes/arm.h (FPU_MVE, FPU_MVE_FPU): Move these features to... + (ARM_EXT2_MVE, ARM_EXT2_MVE_FP): ... the CORE_HIGH space. + (ARM_ANY): Redefine to not include any MVE bits. + (ARM_FEATURE_ALL): Removed. + +2020-01-15 Jozef Lawrynowicz + + * opcode/msp430.h (enum msp430_expp_e): New. + (struct msp430_operand_s): Add expp member to struct. + +2020-01-13 Claudiu Zissulescu + + * elf/arc-cpu.def: Update ARC cpu list. + +2020-01-13 Alan Modra + + * opcode/tic4x.h (EXTR): Delete. + (EXTRU, EXTRS, INSERTU, INSERTS): Rewrite without zero/sign + extension using shifts. Do trim INSERTU value to specified bitfield. + +2020-01-10 Alan Modra + + * opcode/spu.h: Formatting. + (UNSIGNED_EXTRACT): Use 1u. + (SIGNED_EXTRACT): Don't sign extend with shifts. + (DECODE_INSN_I9a, DECODE_INSN_I9b): Avoid left shift of signed value. + Keep result signed. + (DECODE_INSN_U9a, DECODE_INSN_U9b): Delete. + +2020-01-07 Shahab Vahedi + + * opcode/arc.h (insn_class_t): Add 'LLOCK' and 'SCOND'. + +2020-01-02 Sergey Belyashov + + * coff/internal.h: Add defintions of Z80 reloc names. + +2020-01-02 Christian Biesinger + + * opcode/s12z.h: Undef REG_Y. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2019 + +Copyright (C) 2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/ld/ChangeLog b/ld/ChangeLog index 03b4b224b7b..cf5fd0bb4c2 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,4548 +1,6 @@ -2020-12-31 H.J. Lu - Alan Modra - - PR 27128 - * testsuite/ld-elf/pr27128.s: New file. - * testsuite/ld-elf/pr27128.t: Likewise. - * testsuite/ld-elf/pr27128a.d: Likewise. - * testsuite/ld-elf/pr27128b.d: Likewise. - * testsuite/ld-elf/pr27128c.d: Likewise. - * testsuite/ld-elf/pr27128d.d: Likewise. - * testsuite/ld-elf/pr27128e.d: Likewise. - -2020-12-24 Alan Modra - - * testsuite/ld-elf/retain7a.d: Don't run on hppa-linux. - * testsuite/ld-elf/retain7b.d: Correct name. Don't run on tic6x. - Allow OSABI FreeBSD. - -2020-12-24 Alan Modra - - PR 27100 - * ldlang.h (lang_output_section_statement_type): Add dup_output. - * ldlang.c (lang_output_section_statement_lookup): Set dup_output. - (init_os): Test dup_output rather than constraint. - * testsuite/ld-scripts/pr27100.d, - * testsuite/ld-scripts/pr27100.s, - * testsuite/ld-scripts/pr27100.t: New test. - * testsuite/ld-scripts/data.exp: Run it. Don't exclude aout here. - * testsuite/ld-scripts/data.d: Do so here instead. - * testsuite/ld-scripts/fill.d: Likewise. - * testsuite/ld-scripts/fill16.d: Likewise. - -2020-12-23 H.J. Lu - - * NEWS: Mention LAM_U48 and LAM_U57 support. - * ld.texi: Document LAM_U48 and LAM_U57 support. - * emulparams/cet.sh: Updated. - * emulparams/elf_x86_64.sh: Source x86-64-lam.sh. - * emulparams/x86-64-lam.sh: New file. - * testsuite/ld-x86-64/property-x86-lam-u48-1a.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u48-1b.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u48-2.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u48-3a.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u48-3b.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u48-4.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u48-5.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u48.s: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u57-1a.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u57-1b.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u57-2.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u57-3a.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u57-3b.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u57-4.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u57-5.d: Likewise. - * testsuite/ld-x86-64/property-x86-lam-u57.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run LAM tests. - -2020-12-18 H.J. Lu - - PR ld/27082 - * Makefile.am - (libdep_la_LDFLAGS): Add -module -avoid-version. - (libdep_la_LINK): New. - (install-data-local): Depend on $(install-bfdpluginLTLIBRARIES) - and remove libdep.la. - -2020-12-18 H.J. Lu - - PR ld/27091 - * testsuite/ld-elf/retain7.s: New file. - * testsuite/ld-elf/retain7a.d: Likewise. - * testsuite/ld-elf/retain7b.d: Likewise. - -2020-12-16 Howard Chu - H.J. Lu - - PR ld/27081 - * libdep_plugin.c (onload): Skip if not all required plugin hooks - are available. - * testsuite/config/default.exp (dep_plug_opt): New. - * testsuite/ld-elf/elf.exp: Pass $dep_plug_opt to nm. - * testsuite/ld-elf/pr26391.fd: New file. - -2020-12-16 Alan Modra - - * ld.h (ld_config_type): Delete maxpagesize and commonpagesize. - * emultempl/elf.em: Use link_info rather than config - for maxpagesize and commonpagesize. - * emultempl/ppc32elf.em: Likewise. - * ldexp.c (fold_binary, fold_name): Likewise. - * ldemul.c (after_parse_default): Likewise. - (set_output_arch_default): Don't call bfd_emul_set_maxpagesize - or bfd_emul_set_commonpagesize. - -2020-12-15 Vivek Das Mohapatra - - * emultempl/elf.em (gld${EMULATION_NAME}_handle_option): - Parse -z unique / -z nounique options. - * ld.texi (Options): Document -z unique and -z nounique. - * lexsup.c (elf_shlib_list_options): Likewise. - -2020-12-14 Howard Chu - - * libdep_plugin.c: New file: Processes archives that contain a - special library dependencies element. - * Makefile.am: Add build rules for libdep_plugin. - * Makefile.in: Regenerate. - * NEWS: Mention the new plugin. - * ld.texi: Document the new plugin. - -2020-12-14 Alan Modra - - PR 26836 - * lexsup.c (parse_args): Free really_longopts, longopts and - shortopts. - -2020-12-14 Nick Clifton - - PR 27050 - * lexsup.c (parse_args): Ensure that the longind local variable is - set. - -2020-12-14 Alan Modra - - PR 27064 - * deffilep.y (SHARED_K): Rename from SHARED. Update uses. - -2020-12-05 Maciej W. Rozycki - - * testsuite/ld-vax-elf/got-local-exe-off-hidden.dd: New test - dump. - * testsuite/ld-vax-elf/got-local-exe-off-visible.dd: New test - dump. - * testsuite/ld-vax-elf/got-local-lib-off-hidden.dd: New test - dump. - * testsuite/ld-vax-elf/got-local-lib-off-visible.ed: New test - dump. - * testsuite/ld-vax-elf/got-local-off-external.ed: New test dump. - * testsuite/ld-vax-elf/got-local-exe-off.xd: New test dump. - * testsuite/ld-vax-elf/got-local-lib-off.xd: New test dump. - * testsuite/ld-vax-elf/got-local.ld: New test linker script. - * testsuite/ld-vax-elf/got-local-aux-off.s: New test source. - * testsuite/ld-vax-elf/got-local-def-off.s: New test source. - * testsuite/ld-vax-elf/got-local-ref-off-external.s: New test - source. - * testsuite/ld-vax-elf/got-local-ref-off-hidden.s: New test - source. - * testsuite/ld-vax-elf/got-local-ref-off-visible.s: New test - source. - * testsuite/ld-vax-elf/vax-elf.exp: Run the new tests. - -2020-12-04 H.J. Lu - - PR ld/27016 - * testsuite/ld-x86-64/x86-64.exp: Run pr27016a and pr27016b. - * testsuite/ld-x86-64/pr27016a.d: New file. - * testsuite/ld-x86-64/pr27016a.s: Likewise. - * testsuite/ld-x86-64/pr27016b.d: Likewise. - * testsuite/ld-x86-64/pr27016b.s: Likewise. - -2020-12-04 Alan Modra - - * testsuite/ld-elf/pr26978a.d, - * testsuite/ld-elf/pr26978a.s, - * testsuite/ld-elf/pr26978b.d, - * testsuite/ld-elf/pr26978b.s: New tests. - -2020-12-03 Andreas Krebbel - - * testsuite/ld-s390/tlsbin_64.dd: The newly added jgnop mnemonic - replaces long relative branches with empty condition code masks. - -2020-12-03 Maciej W. Rozycki - - * testsuite/ld-vax-elf/vax-elf.exp: Wrap excessively long lines - throughout. - -2020-12-02 Hans-Peter Nilsson - - * testsuite/ld-elf/pr26936.d: Pass -W. - -2020-12-01 H.J. Lu - - PR ld/26970 - * scripttempl/elfarc.sc (TEXT_START_ADDR): New. Add SEGMENT_START. - (SHLIB_TEXT_START_ADDR): Likewise. - -2020-12-01 Alan Modra - - * testsuite/ld-elf/elf.exp: Set ASFLAGS for tic6x. - * testsuite/ld-elf/reloc-discard.d: Remove tic6x xfail. - -2020-12-01 Alan Modra - - * testsuite/ld-elf/pr26979a.s, - * testsuite/ld-elf/pr26979b.s, - * testsuite/ld-elf/pr26979c.s, - * testsuite/ld-elf/pr26979.ver, - * testsuite/ld-elf/pr26979a.d, - * testsuite/ld-elf/pr26979b.d: New tests. - -2020-11-29 H.J. Lu - - PR ld/26936 - * testsuite/ld-elf/pr26936.d: Xfail targets which don't support - mixing linkonce and comdat sections. - -2020-11-28 Alan Modra - - * testsuite/ld-elf/pr26907.ld, - * testsuite/ld-elf/pr26907.s, - * testsuite/ld-elf/pr26907.d: New test. - -2020-11-27 Jozef Lawrynowicz - - * emulparams/armelf.sh (OTHER_SECTIONS): Remove .noinit section - definition. - Define HAVE_{NOINIT,PERSISTENT}=yes. - * scripttempl/avr.sc (.noinit): Add .noinit.* and .gnu.linkonce.n.* - input section wildcard patterns. - * scripttempl/elf.sc: Define .noinit and .persistent sections when - HAVE_NOINIT or HAVE_PERSISTENT are defined to "yes". - * scripttempl/elf32msp430.sc (.noinit): Add .noinit.* and - .gnu.linkonce.n.*. input section wildcard patterns. - (.persistent): Add .persistent.* and - .gnu.linkonce.p.*. input section wildcard patterns. - * scripttempl/elfarcv2.sc (.noinit): Add .noinit.* and - .gnu.linkonce.n.*. input section wildcard patterns. - * scripttempl/pru.sc: Likewise. - * testsuite/ld-elf/noinit-sections-1.d: New test. - * testsuite/ld-elf/noinit-sections-2.d: New test. - * testsuite/ld-elf/noinit-sections-2.l: New test. - * testsuite/ld-elf/noinit-sections.s: New test. - * testsuite/ld-elf/persistent-sections-1.d: New test. - * testsuite/ld-elf/persistent-sections-2.d: New test. - * testsuite/ld-elf/persistent-sections-2.l: New test. - * testsuite/ld-elf/persistent-sections.s: New test. - -2020-11-26 Alan Modra - - PR 26936 - * testsuite/ld-elf/pr26936.d: Pass --gen-debug to gas rather than -g. - Only run when -shared -z options are supported. - * testsuite/ld-elf/pr26936b.s: Define more entry symbols. - -2020-11-25 H.J. Lu - - PR ld/26936 - * testsuite/ld-elf/pr26936.d: New file. - * testsuite/ld-elf/pr26936a.s: Likewise. - * testsuite/ld-elf/pr26936b.s: Likewise. - * testsuite/ld-elf/pr26936c.s: Likewise. - -2020-11-25 Alan Modra - - * ldlang.c (lang_output_section_statement_lookup): Change "create" - parameter to a tristate, if 2 then always create a new output - section statement. Update all callers, with - lang_enter_output_section_statement using "2". - (map_input_to_output_sections): Don't ignore SPECIAL constraint - here. - * ldlang.h (lang_output_section_statement_type): Update prototype. - (lang_output_section_find): Update. - -2020-11-24 H.J. Lu - - PR gold/26939 - * testsuite/ld-x86-64/pr26939-x32.d: New file. - * testsuite/ld-x86-64/pr26939.d: Likewise. - * testsuite/ld-x86-64/pr26939.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run PR gold/26939 tests. - -2020-11-23 H.J. Lu - - PR ld/26918 - * testsuite/ld-s390/pr26918-1.d: New file. - * testsuite/ld-s390/pr26918-1.s: Likewise. - * testsuite/ld-s390/s390.exp: Run all *.d tests. - -2020-11-23 Shahab Vahedi - - * testsuite/ld-arc/tls_ie-01.d: Use a more general pattern. - -2020-11-21 Nelson Chu - - * emultempl/riscvelf.em (riscv_elf_before_allocation): Change - link_info.relax_pass from 3 to 4. - * testsuite/ld-riscv-elf/pcgp-relax.d: New testcase. - * testsuite/ld-riscv-elf/pcgp-relax.s: Likewise. - * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Updated. - -2020-11-20 Nick Alcock - - * testsuite/ld-ctf/data-func-conflicted.d: Shrink the expected - size of the type section now that function types are being - deduplicated properly. - -2020-11-20 Nick Alcock - - * testsuite/ld-ctf/array.d: Adjust for nonzero flags word and - public symbols in the data section rather than variables: use - sysv hash style to keep test results the same on non-GNU targets. - * testsuite/ld-ctf/diag-cttname-null.d: Likewise. - * testsuite/ld-ctf/diag-cuname.d: Likewise. - * testsuite/ld-ctf/diag-parlabel.d: Likewise. - * testsuite/ld-ctf/slice.d: Likewise. - * testsuite/ld-ctf/function.d: Likewise, but in the function section. - * testsuite/ld-ctf/conflicting-cycle-1.B-1.d: Adjust for nonzero - flags word. - * testsuite/ld-ctf/conflicting-cycle-1.B-2.d: Likewise. - * testsuite/ld-ctf/conflicting-cycle-1.parent.d: Likewise. - * testsuite/ld-ctf/conflicting-cycle-2.A-1.d: Likewise. - * testsuite/ld-ctf/conflicting-cycle-2.A-2.d: Likewise. - * testsuite/ld-ctf/conflicting-cycle-2.parent.d: Likewise. - * testsuite/ld-ctf/conflicting-cycle-3.C-1.d: Likewise. - * testsuite/ld-ctf/conflicting-cycle-3.C-2.d: Likewise. - * testsuite/ld-ctf/conflicting-cycle-3.parent.d: Likewise. - * testsuite/ld-ctf/cross-tu-noncyclic.d: Likewise. - * testsuite/ld-ctf/cycle-1.d: Likewise. - * testsuite/ld-ctf/cycle-2.A.d: Likewise. - * testsuite/ld-ctf/cycle-2.B.d: Likewise. - * testsuite/ld-ctf/cycle-2.C.d: Likewise. - * testsuite/ld-ctf/diag-wrong-magic-number-mixed.d: Likewise. - * testsuite/ld-ctf/super-sub-cycles.d: Likewise. - * testsuite/ld-ctf/data-func-1.c: New test. - * testsuite/ld-ctf/data-func-2.c: Likewise. - * testsuite/ld-ctf/data-func-conflicted.d: Likewise. - -2020-11-20 Nick Alcock - - * ldelfgen.c (struct ctf_strsym_iter_cb_arg): Rename to... - (struct ctf_strtab_iter_cb_arg): ... this, changing fields: - : Remove. - : Remove. - : Rename to... - : ... this. - (ldelf_ctf_strtab_iter_cb): Adjust. - (ldelf_ctf_symbols_iter_cb): Remove. - (ldelf_new_dynsym_for_ctf): New, tell libctf about a single - symbol. - (ldelf_examine_strtab_for_ctf): Rename to... - (ldelf_acquire_strings_for_ctf): ... this, only doing the strtab - portion and not symbols. - * ldelfgen.h: Adjust declarations accordingly. - * ldemul.c (ldemul_examine_strtab_for_ctf): Rename to... - (ldemul_acquire_strings_for_ctf): ... this. - (ldemul_new_dynsym_for_ctf): New. - * ldemul.h: Adjust declarations accordingly. - * ldlang.c (ldlang_ctf_apply_strsym): Rename to... - (ldlang_ctf_acquire_strings): ... this. - (ldlang_ctf_new_dynsym): New. - (lang_write_ctf): Call ldemul_new_dynsym_for_ctf with NULL to do - the actual symbol shuffle. - * ldlang.h (struct elf_strtab_hash): Adjust accordingly. - * ldmain.c (bfd_link_callbacks): Wire up new/renamed callbacks. - - * emultempl/aix.em: Adjust for emulation changes: - ldemul_examine_strtab_for_ctf renamed to - ldemul_acquire_strings_for_ctf, new ldemul_new_dynsym_for_ctf. - * emultempl/armcoff.em: Likewise. - * emultempl/beos.em: Likewise. - * emultempl/elf.em: Likewise. - * emultempl/elf-generic.em: Likewise. - * emultempl/linux.em: Likewise. - * emultempl/msp430.em: Likewise. - * emultempl/pe.em: Likewise. - * emultempl/pep.em: Likewise. - * emultempl/ticoff.em: Likewise. - * emultempl/vanilla.em: Likewise. - -2020-11-20 Nick Alcock - - * ldlang.c (ctf_output): This is a ctf_dict_t now. - (lang_ctf_errs_warnings): Rename ctf_file_t to ctf_dict_t. - (ldlang_open_ctf): Adjust comment. - (lang_merge_ctf): Use ctf_dict_close, not ctf_file_close. - * ldelfgen.h (ldelf_examine_strtab_for_ctf): Rename ctf_file_t to - ctf_dict_t. Change opaque declaration accordingly. - * ldelfgen.c (ldelf_examine_strtab_for_ctf): Adjust. - * ldemul.h (examine_strtab_for_ctf): Likewise. - (ldemul_examine_strtab_for_ctf): Likewise. - * ldeuml.c (ldemul_examine_strtab_for_ctf): Likewise. - -2020-11-20 Jozef Lawrynowicz - - * testsuite/ld-elf/retain3.s: Move symbolic reference into writeable - .data section from read-only .text section. - * testsuite/ld-elf/retain5.d: Don't pass --print-gc-sections for test - that doesn't require it. - * testsuite/ld-elf/retain6a.d: Adjust test. - * testsuite/ld-elf/retain6main.s: Move symbolic reference into writeable - .data section from read-only .text section. - -2020-11-18 Alan Modra - - * testsuite/ld-powerpc/group1.d, - * testsuite/ld-powerpc/group1.s, - * testsuite/ld-powerpc/group1.sym, - * testsuite/ld-powerpc/group2.d, - * testsuite/ld-powerpc/group2.s, - * testsuite/ld-powerpc/group2.sym, - * testsuite/ld-powerpc/group3.s, - * testsuite/ld-powerpc/group3.sym: New test files. - * testsuite/ld-powerpc/powerpc.exp: Run new tests. - -2020-11-18 Jozef Lawrynowicz - - * NEWS: Announce support for SHF_GNU_RETAIN. - * ld.texi (garbage collection): Document SHF_GNU_RETAIN. - (Output Section Discarding): Likewise. - * testsuite/ld-elf/elf.exp: Run new tests. - * testsuite/ld-elf/retain1.s: New test. - * testsuite/ld-elf/retain1a.d: New test. - * testsuite/ld-elf/retain1b.d: New test. - * testsuite/ld-elf/retain2.d: New test. - * testsuite/ld-elf/retain2.ld: New test. - * testsuite/ld-elf/retain2.map: New test. - * testsuite/ld-elf/retain3.d: New test. - * testsuite/ld-elf/retain3.s: New test. - * testsuite/ld-elf/retain4.d: New test. - * testsuite/ld-elf/retain4.s: New test. - * testsuite/ld-elf/retain5.d: New test. - * testsuite/ld-elf/retain5.map: New test. - * testsuite/ld-elf/retain5lib.s: New test. - * testsuite/ld-elf/retain5main.s: New test. - * testsuite/ld-elf/retain6a.d: New test. - * testsuite/ld-elf/retain6b.d: New test. - * testsuite/ld-elf/retain6lib.s: New test. - * testsuite/ld-elf/retain6main.s: New test. - -2020-11-17 Alan Modra - - PR 26882 - * testsuite/ld-powerpc/dotsym3.d: Add "-z notext" to ld options. - * testsuite/ld-powerpc/dotsym4.d: Likewise. - * testsuite/ld-powerpc/ppc476-shared.d: Likewise. - * testsuite/ld-powerpc/ppc476-shared2.d: Likewise. - * testsuite/ld-powerpc/powerpc.exp: Likewise for various tests. - * testsuite/ld-undefined/weak-fundef.s: Add BLPLT variant. - * testsuite/ld-undefined/weak-undef.exp: Define BLPLT for ppc32. - -2020-11-16 Nick Clifton - - * po/es.po: Updated Spanish translation. - -2020-11-16 Shahab Vahedi - - * testsuite/ld-arc/tls_ie-01.d: Update the dump command. - -2020-11-14 Borislav Petkov - - * testsuite/ld-x86-64/pe-x86-64-4.od: Adjust regexes. - * testsuite/ld-x86-64/tlsld3.dd: Likewise. - * testsuite/ld-x86-64/tlsld4.dd: Likewise. - -2020-11-13 H.J. Lu - - PR ld/26869 - * ldelf.c (ldelf_before_allocation): Set rel_from_abs to 1 for - __ehdr_start. - * testsuite/ld-i386/i386.exp: Run pr26869. - * testsuite/ld-i386/pr26869.d: New file. - * testsuite/ld-i386/pr26869.s: Likewise. - -2020-11-09 Andreas Schwab - - * Makefile.am (development.exp): Fix regexp. - * Makefile.in: Regenerate. - -2020-11-06 Nick Clifton - - * lexsup.c (parse_args): Add more checks of the mapfile. If it is - a directory use the basename of the output file as the file - component. If the % character is present, replace it with the - full output filepath. - * testsuite/ld-scripts/map-address.exp: Add test of % - functionality. - * ld.texi: Document the new behaviour. - -2020-11-06 Nick Clifton - - * po/sr.po: Updated Serbian translation. - -2020-11-03 Nick Clifton - - * emulparams/x86-64-level.sh - (PARSE_AND_LIST_ARGS_CASE_Z_X86_64_LEVEL): Fix indentation. - -2020-11-02 Alan Modra - - PR 26806 - * testsuite/ld-plugin/lto-19.h, - * testsuite/ld-plugin/lto-19a.c, - * testsuite/ld-plugin/lto-19b.c, - * testsuite/ld-plugin/lto-19c.c: New test. - * testsuite/ld-plugin/pr26806.c, - * testsuite/ld-plugin/pr26806.d: New test. - * testsuite/ld-plugin/lto.exp: Run them. - -2020-10-30 H.J. Lu - - PR gas/26703 - * NEWS: Mention -z x86-64-baseline. - * ld.texi: Document -z x86-64-baseline. - * emulparams/x86-64-level.sh: Handle -z x86-64-baseline. - * testsuite/ld-elf/x86-feature-1a.rd: Update. - * testsuite/ld-elf/x86-feature-1b.rd: Likewise. - * testsuite/ld-elf/x86-feature-1c.rd: Likewise. - * testsuite/ld-elf/x86-feature-1d.rd: Likewise. - * testsuite/ld-elf/x86-feature-1e.rd: Likewise. - * testsuite/ld-i386/pr23372c.d: Likewise. - * testsuite/ld-i386/pr23486c.d: Likewise. - * testsuite/ld-i386/pr23486d.d: Likewise. - * testsuite/ld-i386/pr24322a.d: Likewise. - * testsuite/ld-i386/pr24322b.d: Likewise. - * testsuite/ld-i386/property-1a.r: Likewise. - * testsuite/ld-i386/property-2a.r: Likewise. - * testsuite/ld-i386/property-3.r: Likewise. - * testsuite/ld-i386/property-3a.r: Likewise. - * testsuite/ld-i386/property-4.r: Likewise. - * testsuite/ld-i386/property-4a.r: Likewise. - * testsuite/ld-i386/property-5.r: Likewise. - * testsuite/ld-i386/property-5a.r: Likewise. - * testsuite/ld-i386/property-7a.r: Likewise. - * testsuite/ld-i386/property-x86-3.d: Likewise. - * testsuite/ld-i386/property-x86-4a.d: Likewise. - * testsuite/ld-i386/property-x86-5.d: Likewise. - * testsuite/ld-i386/property-x86-cet1.d: Likewise. - * testsuite/ld-i386/property-x86-cet2a.d: Likewise. - * testsuite/ld-i386/property-x86-cet5a.d: Likewise. - * testsuite/ld-i386/property-x86-cet5b.d: Likewise. - * testsuite/ld-i386/property-x86-ibt1a.d: Likewise. - * testsuite/ld-i386/property-x86-ibt1b.d: Likewise. - * testsuite/ld-i386/property-x86-ibt2.d: Likewise. - * testsuite/ld-i386/property-x86-ibt3a.d: Likewise. - * testsuite/ld-i386/property-x86-ibt3b.d: Likewise. - * testsuite/ld-i386/property-x86-ibt4.d: Likewise. - * testsuite/ld-i386/property-x86-ibt5.d: Likewise. - * testsuite/ld-i386/property-x86-isa1.d: Likewise. - * testsuite/ld-i386/property-x86-isa2.d: Likewise. - * testsuite/ld-i386/property-x86-isa3.d: Likewise. - * testsuite/ld-i386/property-x86-shstk1a.d: Likewise. - * testsuite/ld-i386/property-x86-shstk1b.d: Likewise. - * testsuite/ld-i386/property-x86-shstk2.d: Likewise. - * testsuite/ld-i386/property-x86-shstk3a.d: Likewise. - * testsuite/ld-i386/property-x86-shstk3b.d: Likewise. - * testsuite/ld-i386/property-x86-shstk4.d: Likewise. - * testsuite/ld-i386/property-x86-shstk5.d: Likewise. - * testsuite/ld-x86-64/pr23372c-x32.d: Likewise. - * testsuite/ld-x86-64/pr23372c.d: Likewise. - * testsuite/ld-x86-64/pr23486c-x32.d: Likewise. - * testsuite/ld-x86-64/pr23486c.d: Likewise. - * testsuite/ld-x86-64/pr23486d-x32.d: Likewise. - * testsuite/ld-x86-64/pr23486d.d: Likewise. - * testsuite/ld-x86-64/pr24322a-x32.d: Likewise. - * testsuite/ld-x86-64/pr24322a.d: Likewise. - * testsuite/ld-x86-64/pr24322b-x32.d: Likewise. - * testsuite/ld-x86-64/pr24322b.d: Likewise. - * testsuite/ld-x86-64/pr24458a-x32.d: Likewise. - * testsuite/ld-x86-64/pr24458a.d: Likewise. - * testsuite/ld-x86-64/pr24458b-x32.d: Likewise. - * testsuite/ld-x86-64/pr24458b.d: Likewise. - * testsuite/ld-x86-64/pr24458c-x32.d: Likewise. - * testsuite/ld-x86-64/pr24458c.d: Likewise. - * testsuite/ld-x86-64/property-1a.r: Likewise. - * testsuite/ld-x86-64/property-2a.r: Likewise. - * testsuite/ld-x86-64/property-3.r: Likewise. - * testsuite/ld-x86-64/property-3a.r: Likewise. - * testsuite/ld-x86-64/property-4.r: Likewise. - * testsuite/ld-x86-64/property-4a.r: Likewise. - * testsuite/ld-x86-64/property-5.r: Likewise. - * testsuite/ld-x86-64/property-5a.r: Likewise. - * testsuite/ld-x86-64/property-7a.r: Likewise. - * testsuite/ld-x86-64/property-x86-3-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-3.d: Likewise. - * testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-4a.d: Likewise. - * testsuite/ld-x86-64/property-x86-5-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-5.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet1-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet1.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet2a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet2a.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet5a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet5a.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet5b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet5b.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt2.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt4.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa1-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa1.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa2-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa2.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa3-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa3.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt5.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk2.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk4.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk5.d: Likewise. - * testsuite/ld-i386/i386.exp: Run property-x86-isa4. - * testsuite/ld-i386/property-x86-isa4.d: New file. - * testsuite/ld-x86-64/property-x86-isa4-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa4.d: Likewise. - * ld/testsuite/ld-x86-64/x86-64.exp: Run property-x86-isa4 - and property-x86-isa4-x32. - -2020-10-26 H.J. Lu - - * testsuite/ld-elfweak/elfweak.exp: Pass $NOLTO_CFLAGS to CC. - -2020-10-26 Nick Clifton - - PR 26626 - * ldmain.c (undefined_symbol): Use the keyword undefined-symbol - when invoking the error handling script for undefined symbols. - * ld.texi: Update documentation. - -2020-10-26 Cooper Qu - - * emulparams/cskyelf.sh (TEXT_START_ADDR): Change to 0x60000000. - (DATA_ADDR) : Define. - (OTHER_SYMBOLS) : Define. - (OTHER_BSS_SYMBOLS) : Set symbol __sbss__. - (OTHER_BSS_END_SYMBOLS) : Set symbol __ebss__. - * ld/emulparams/cskyelf_linux.sh : Don't include cskyelf.sh. - * testsuite/ld-csky/data.d : Fix '/s*' to match spaces. - * testsuite/ld-csky/hilo16.d : Likewise. - -2020-10-23 H.J. Lu - - * testsuite/config/default.exp (plug_opt): Set only if compiler - is available. - -2020-10-22 H.J. Lu - - * testsuite/ld-plugin/lto.exp (plug_opt): Moved to ... - * testsuite/config/default.exp (plug_opt): Here. New. - * testsuite/ld-bootstrap/bootstrap.exp: Skip when linker is - compiled with -fprofile-generate=. - -2020-10-22 H.J. Lu - - * testsuite/config/default.exp (NOLTO_CFLAGS): New. - * ld/testsuite/ld-elfcomm/elfcomm.exp: Add $NOLTO_CFLAGS to CC. - * testsuite/ld-elfvers/vers.exp: Likewise. - * testsuite/ld-elfvsb/elfvsb.exp: Likewise. - * testsuite/ld-gc/gc.exp: Likewise. - * testsuite/ld-plugin/plugin.exp: Likewise. - * testsuite/ld-scripts/crossref.exp: Likewise. - * testsuite/ld-selective/selective.exp: Likewise. - * testsuite/ld-undefined/undefined.exp: Likewise. - * testsuite/ld-srec/srec.exp: Add $NOLTO_CFLAGS to CC. Override - CXXFLAGS. - * testsuite/lib/ld-lib.exp (run_ld_link_tests): Prepend -fno-lto - to cflags. - -2020-10-19 Alan Modra - - * testsuite/config/default.exp: Provide dummy libraries for - alpha-dec-vms. - (compiler_supports): New proc. Use it for compiler tests. - * testsuite/lib/ld-lib.exp (default_ld_assemble): Don't die if - subdir not set. - (run_ld_link_tests): Pass LDFLAGS to ld. - * testsuite/ld-checks/checks.exp (section_check): Likewise. - * testsuite/ld-scripts/assert.exp: Likewise. - * testsuite/ld-scripts/extern.exp: Likewise. - * testsuite/ld-scripts/log2.exp: Likewise. - * testsuite/ld-scripts/map-address.exp: Likewise. - * testsuite/ld-scripts/script.exp: Likewise. - * testsuite/ld-scripts/sizeof.exp: Likewise. - -2020-10-16 Andrew Burgess - - * ldlang.c (lang_process): Add extra call to - lang_do_memory_regions, and pass parameter. - (lang_do_memory_regions): Add parameter, only define origin and - length when requested. Reindent. - * testsuite/ld-scripts/provide-10.d: New file. - * testsuite/ld-scripts/provide-10.map: New file. - * testsuite/ld-scripts/provide-11.d: New file. - * testsuite/ld-scripts/provide-11.map: New file. - * testsuite/ld-scripts/provide-12.d: New file. - * testsuite/ld-scripts/provide-12.map: New file. - * testsuite/ld-scripts/provide-9.d: New file. - * testsuite/ld-scripts/provide-9.map: New file. - * testsuite/ld-scripts/provide-9.t: New file. - -2020-10-16 Andrew Burgess - - * ld.texi (Options): Extend the description of --defsym. - -2020-10-16 Nick Clifton - - PR 26626 - * ldmain.c (undefined_symbol): If an error handlign script is - available, call it. - * ldfile.c (error_handling_script): Declare. - (ldfile_open_file): If a library cannot be found and an error - handling script is available, call it. - * ldmain.h (error_handling_script): Prototype. - * ldlex.h (OPTION_ERROR_HANDLING_SCRIPT): Define. - * lexsup.c (ld_options): Add --error-handling-script. - (parse_args): Add support for --errror-handling-script. - * ld.texi: Document the new feature. - * configure.ac: Add --error-handling-script option to disable - support for the new feature. - * NEWS: Mention the new feature. - * config.in: Regenerate. - * configure: Regenerate. - -2020-10-16 Nelson Chu - - * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite.s: New testcase. - * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite-exe.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite-pic.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite-pie.rd: Likewise. - * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Updated. - -2020-10-16 Nelson Chu - - * emulparams/elf32lriscv-defs.sh: Add IREL_IN_PLT. - * testsuite/ld-ifunc/ifunc.exp: Enable ifunc tests for RISC-V. - * testsuite/ld-riscv-elf/ld-riscv-elf.exp (run_dump_test_ifunc): - New dump test for ifunc. There are two arguments, 'target` and - `output`. The `target` is rv32 or rv64, and the `output` is used - to choose which output you want to test (exe, pie or .so). - * testsuite/ld-riscv-elf/ifunc-reloc-call-01.s: New testcase. - * testsuite/ld-riscv-elf/ifunc-reloc-call-01.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-call-01-exe.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-call-01-pic.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-call-01-pie.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-call-02.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-call-02.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-call-02-exe.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-call-02-pic.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-call-02-pie.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-data.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-data.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-data-exe.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-data-pic.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-data-pie.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-got.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-got.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-got-exe.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-got-pic.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-got-pie.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-pcrel.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-pcrel.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-pcrel-exe.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-pcrel-pic.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-reloc-pcrel-pie.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-nonplt.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-nonplt.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-nonplt-exe.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-nonplt-pic.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-nonplt-pie.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-01.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-01.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-01-exe.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-01-pic.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-01-pie.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-02.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-02.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-02-exe.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-02-pic.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-plt-02-pie.rd: Likewise. - * testsuite/ld-riscv-elf/ifunc-seperate-resolver.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-seperate-caller.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-seperate-exe.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-seperate-pic.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-seperate-pie.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-seperate-caller-pcrel.s: Likewise. - * testsuite/ld-riscv-elf/ifunc-seperate-pcrel-pic.d: Likewise. - * testsuite/ld-riscv-elf/ifunc-seperate-pcrel-pie.d: Likewise. - -2020-10-09 H.J. Lu - - PR gas/26703 - * NEWS: Mention -z x86-64-v[234]. - * ld.texi: Document -z x86-64-v[234]. - * emulparams/elf32_x86_64.sh: Use x86-64-level.sh. - * emulparams/elf_i386.sh: Likewise. - * emulparams/elf_x86_64.sh: Likewise. - * emulparams/x86-64-level.sh: New file. - * testsuite/ld-elf/x86-feature-1a.rd: Update. - * testsuite/ld-elf/x86-feature-1b.rd: Likewise. - * testsuite/ld-elf/x86-feature-1c.rd: Likewise. - * testsuite/ld-elf/x86-feature-1d.rd: Likewise. - * testsuite/ld-elf/x86-feature-1e.rd: Likewise. - * testsuite/ld-i386/pr23372c.d: Likewise. - * testsuite/ld-i386/pr23486c.d: Likewise. - * testsuite/ld-i386/pr23486d.d: Likewise. - * testsuite/ld-i386/pr24322a.d: Likewise. - * testsuite/ld-i386/pr24322b.d: Likewise. - * testsuite/ld-i386/property-1a.r: Likewise. - * testsuite/ld-i386/property-2a.r: Likewise. - * testsuite/ld-i386/property-3.r: Likewise. - * testsuite/ld-i386/property-3a.r: Likewise. - * testsuite/ld-i386/property-4.r: Likewise. - * testsuite/ld-i386/property-4a.r: Likewise. - * testsuite/ld-i386/property-5.r: Likewise. - * testsuite/ld-i386/property-5a.r: Likewise. - * testsuite/ld-i386/property-7a.r: Likewise. - * testsuite/ld-i386/property-x86-3.d: Likewise. - * testsuite/ld-i386/property-x86-4a.d: Likewise. - * testsuite/ld-i386/property-x86-5.d: Likewise. - * testsuite/ld-i386/property-x86-cet1.d: Likewise. - * testsuite/ld-i386/property-x86-cet2a.d: Likewise. - * testsuite/ld-i386/property-x86-cet5a.d: Likewise. - * testsuite/ld-i386/property-x86-cet5b.d: Likewise. - * testsuite/ld-i386/property-x86-ibt1a.d: Likewise. - * testsuite/ld-i386/property-x86-ibt1b.d: Likewise. - * testsuite/ld-i386/property-x86-ibt2.d: Likewise. - * testsuite/ld-i386/property-x86-ibt3a.d: Likewise. - * testsuite/ld-i386/property-x86-ibt3b.d: Likewise. - * testsuite/ld-i386/property-x86-ibt4.d: Likewise. - * testsuite/ld-i386/property-x86-ibt5.d: Likewise. - * testsuite/ld-i386/property-x86-shstk1a.d: Likewise. - * testsuite/ld-i386/property-x86-shstk1b.d: Likewise. - * testsuite/ld-i386/property-x86-shstk2.d: Likewise. - * testsuite/ld-i386/property-x86-shstk3a.d: Likewise. - * testsuite/ld-i386/property-x86-shstk3b.d: Likewise. - * testsuite/ld-i386/property-x86-shstk4.d: Likewise. - * testsuite/ld-i386/property-x86-shstk5.d: Likewise. - * testsuite/ld-x86-64/pr23372c-x32.d: Likewise. - * testsuite/ld-x86-64/pr23372c.d: Likewise. - * testsuite/ld-x86-64/pr23486c.d: Likewise. - * testsuite/ld-x86-64/pr23486d-x32.d: Likewise. - * testsuite/ld-x86-64/pr23486d.d: Likewise. - * testsuite/ld-x86-64/pr24322a-x32.d: Likewise. - * testsuite/ld-x86-64/pr24322a.d: Likewise. - * testsuite/ld-x86-64/pr24322b-x32.d: Likewise. - * testsuite/ld-x86-64/pr24322b.d: Likewise. - * testsuite/ld-x86-64/pr24458a-x32.d: Likewise. - * testsuite/ld-x86-64/pr24458a.d: Likewise. - * testsuite/ld-x86-64/pr24458b-x32.d: Likewise. - * testsuite/ld-x86-64/pr24458b.d: Likewise. - * testsuite/ld-x86-64/pr24458c-x32.d: Likewise. - * testsuite/ld-x86-64/pr24458c.d: Likewise. - * testsuite/ld-x86-64/property-1a.r: Likewise. - * testsuite/ld-x86-64/property-2a.r: Likewise. - * testsuite/ld-x86-64/property-3.r: Likewise. - * testsuite/ld-x86-64/property-3a.r: Likewise. - * testsuite/ld-x86-64/property-4.r: Likewise. - * testsuite/ld-x86-64/property-4a.r: Likewise. - * testsuite/ld-x86-64/property-5.r: Likewise. - * testsuite/ld-x86-64/property-5a.r: Likewise. - * testsuite/ld-x86-64/property-7a.r: Likewise. - * testsuite/ld-x86-64/property-x86-3-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-3.d: Likewise. - * testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-4a.d: Likewise. - * testsuite/ld-x86-64/property-x86-5-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-5.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet1-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet1.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet2a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet2a.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet5a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet5a.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet5b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-cet5b.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt2.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt4.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt5.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk2.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk4.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk5.d: Likewise. - * testsuite/ld-i386/i386.exp: Run property-x86-6, - property-x86-isa1, property-x86-isa2 and property-x86-isa3. - * testsuite/ld-i386/property-x86-1.S: Updated to the current - GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED - values. - * testsuite/ld-i386/property-x86-2.S: Likewise. - * testsuite/ld-i386/property-x86-3.s: Likewise. - * testsuite/ld-x86-64/pr23372d.s: Likewise. - * testsuite/ld-x86-64/pr23372e.s: Likewise. - * testsuite/ld-x86-64/pr23372f.s: Likewise. - * testsuite/ld-x86-64/pr23486c.s: Likewise. - * testsuite/ld-x86-64/pr23486d.s: Likewise. - * testsuite/ld-x86-64/property-x86-1.S: Likewise. - * testsuite/ld-x86-64/property-x86-2.S: Likewise. - * testsuite/ld-x86-64/property-x86-3.s: Likewise. - * testsuite/ld-x86-64/property-x86-5a.s: Likewise. - * testsuite/ld-x86-64/property-x86-5b.s: Likewise. - * testsuite/ld-i386/property-x86-6.d: New file. - * testsuite/ld-i386/property-x86-isa1.d: Likewise. - * testsuite/ld-i386/property-x86-isa2.d: Likewise. - * testsuite/ld-i386/property-x86-isa3.d: Likewise. - * testsuite/ld-x86-64/property-x86-6-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-6.d: Likewise. - * testsuite/ld-x86-64/property-x86-6.s: Likewise. - * testsuite/ld-x86-64/property-x86-isa1-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa1.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa1.s: Likewise. - * testsuite/ld-x86-64/property-x86-isa2-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa2.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa3-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-isa3.d: Likewise. - * testsuite/ld-x86-64/simple.s: Likewise. - * ld/testsuite/ld-x86-64/x86-64.exp: Run property-x86-6, - property-x86-6-x32, property-x86-isa1, property-x86-isa1-x32, - property-x86-isa2, property-x86-isa2-x32, property-x86-isa3-x32 - and property-x86-isa3. - -2020-10-06 H.J. Lu - - * testsuite/ld-i386/property-3.r: Updated for Fedora binary - annotation plugin for GCC. - * testsuite/ld-i386/property-4.r: Likewise. - * testsuite/ld-i386/property-5.r: Likewise. - * testsuite/ld-x86-64/property-3.r: Likewise. - * testsuite/ld-x86-64/property-4.r: Likewise. - * testsuite/ld-x86-64/property-5.r: Likewise. - -2020-10-06 H.J. Lu - - PR ld/26711 - * testsuite/ld-i386/i386.exp: Run ld/26711 tests. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr26711-1.d: Likewise. - * testsuite/ld-i386/pr26711-2.d: Likewise. - * testsuite/ld-i386/pr26711-3.d: Likewise. - * testsuite/ld-x86-64/pr26711-1-x32.d: Likewise. - * testsuite/ld-x86-64/pr26711-1.d: Likewise. - * testsuite/ld-x86-64/pr26711-2-x32.d: Likewise. - * testsuite/ld-x86-64/pr26711-2.d: Likewise. - * testsuite/ld-x86-64/pr26711-3-x32.d: Likewise. - * testsuite/ld-x86-64/pr26711-3.d: Likewise. - * testsuite/ld-x86-64/pr26711.s: Likewise. - -2020-10-06 Brandon Bergren - - * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64lppc_fbsd.c. - Include $(DEPDIR)/eelf64lppc_fbsd.Pc. - * configure.tgt: Add powerpc64le-*-freebsd*. - * emulparams/elf64lppc_fbsd.sh: New file. - * Makefile.in: Regenerate. - * po/BLD-POTFILES.in: Regenerate. - -2020-10-05 T.K. Chia - - PR gas/26694 - * testsuite/ld-i386/ljmp.s, - * testsuite/ld-i386/ljmp1.d, - * testsuite/ld-i386/ljmp1.s, - * testsuite/ld-i386/ljmp2.d, - * testsuite/ld-i386/ljmp2.s, - * testsuite/ld-x86-64/ljmp1.d, - * testsuite/ld-x86-64/ljmp2.d: New testcases. - * testsuite/ld-i386/i386.exp, - * testsuite/ld-x86-64/x86-64.exp: Run them. - -2020-10-05 Nick Clifton - - * lexsup.c (parse_args): Generate an error or warning message when - multiple short options are used together. - -2020-10-01 H.J. Lu - - PR 26681 - * testsuite/ld-elf/pr26681.s: New test. - * testsuite/ld-elf/pr26681.d: New test driver. - * testsuite/ld-elf/pr26681.l: New test output. - -2020-09-30 H.J. Lu - - PR ld/26675 - * plugin.c (plugin_notice): Override the IR definition before - all LTO symbols have been read for non-ELF targets. - -2020-09-30 Jeremy Drake - - PR 26588 - * emultempl/pe.em (_finish): Generate an import library for DLLs, - even if they have no exports. - * emultempl/pep.em (_finish): Likewise. - -2020-09-28 Alan Modra - - * testsuite/ld-powerpc/tlsget.d, - * testsuite/ld-powerpc/tlsget.s, - * testsuite/ld-powerpc/tlsget.wf, - * testsuite/ld-powerpc/tlsget2.d. - * testsuite/ld-powerpc/tlsget2.wf: New testcases. - * testsuite/ld-powerpc/powerpc.exp: Run them. - -2020-09-26 Alan Modra - - * testsuite/ld-powerpc/elfv2so.d, - * testsuite/ld-powerpc/notoc2.d, - * testsuite/ld-powerpc/tlsdesc.wf, - * testsuite/ld-powerpc/tlsdesc2.d, - * testsuite/ld-powerpc/tlsdesc2.wf, - * testsuite/ld-powerpc/tlsopt5.d, - * testsuite/ld-powerpc/tlsopt5.wf, - * testsuite/ld-powerpc/tlsopt6.d, - * testsuite/ld-powerpc/tlsopt6.wf: Update __glink_PLTresolve. - -2020-09-24 Alan Modra - - PR 26655 - * emultempl/ppc64elf.em (params): Add ppc_edit. - (ppc_before_allocation): Split off some edit functions to.. - (ppc_edit): ..this, new function. - -2020-09-22 Frediano Ziglio - - * emultempl/pe.em (set_entry_point): Only use the DLL entry point - for DLLs. - * emultempl/pep.em (set_entry_point): Likewise. - -2020-09-16 Mikael Pettersson - - * testsuite/ld-elf/shared.exp: Add -Av9 to AFLAGS_PIE on sparc. - * testsuite/ld-elf/tls.exp: Add -Av9 to AFLAGS_PIC on sparc. - -2020-09-16 H.J. Lu - - PR ld/26583 - * testsuite/ld-x86-64/pe-x86-64-1.od: New file. - * testsuite/ld-x86-64/pe-x86-64-1a.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-1b.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-1c.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-2.od: Likewise. - * testsuite/ld-x86-64/pe-x86-64-2a.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-2b.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-2c.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-3.od: Likewise. - * testsuite/ld-x86-64/pe-x86-64-3a.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-3b.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-3c.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-3d.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-4.od: Likewise. - * testsuite/ld-x86-64/pe-x86-64-4a.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-4b.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-4c.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64-4d.obj.bz2: Likewise. - * testsuite/ld-x86-64/pe-x86-64.exp: Likewise. - * testsuite/lib/ld-lib.exp (run_ld_link_tests): Handle bz2 binary - inputs. - -2020-09-16 Alan Modra - - * plugin.c (asymbol_from_plugin_symbol): Adjust elf_symbol_from - invocation. - -2020-09-15 H.J. Lu - - * ldelf.c (ldelf_after_open): Check bfd_target_elf_flavour first. - -2020-09-15 Hans-Peter Nilsson - - PR ld/26589 - * testsuite/ld-elf/pr26589.d, testsuite/ld-elf/locref3.s: New test. - -2020-09-13 Alan Modra - - PR 26391 - * testsuite/ld-elf/pr26391.nd: Adjust to match powerpc64 function - descriptors. - -2020-09-12 H.J. Lu - - PR ld/26391 - * NEWS: Mention "-z unique-symbol". - * emultempl/elf.em (gld${EMULATION_NAME}_handle_option): Handle - "-z unique-symbol" and "-z nounique-symbol". - * ld.texi: Document "-z unique-symbol" and "-z nounique-symbol". - * lexsup.c (elf_static_list_options): Add "-z unique-symbol" and - "-z nounique-symbol". - * testsuite/ld-elf/elf.exp: Add PR ld/26391 tests. - * testsuite/ld-elf/pr26391.nd: New file. - * testsuite/ld-elf/pr26391.out: Likewise. - * testsuite/ld-elf/pr26391a.c: Likewise. - * testsuite/ld-elf/pr26391b.c: Likewise. - * testsuite/ld-elf/pr26391c.c: Likewise. - * testsuite/ld-elf/pr26391d.c: Likewise. - -2020-09-11 Jeremy Drake - - PR 26588 - * emultempl/pe.em (_finish): Only generate a import library if not - exporting relocs. - * emultempl/pep.em: Likewise. - -2020-09-10 Siddhesh Poyarekar - - * testsuite/ld-aarch64/emit-relocs-560.d: Expect error instead - of valid output. - -2020-09-10 H.J. Lu - - PR ld/26590 - * testsuite/ld-elf/pr26590.err: New file. - * testsuite/ld-elf/pr26590a.c: Likewise. - * testsuite/ld-elf/pr26590b.c: Likewise. - * testsuite/ld-elf/pr26590c.c: Likewise. - * testsuite/ld-elf/pr26590d.c: Likewise. - * testsuite/ld-elf/shared.exp: Run ld/26590 tests. - -2020-09-10 Alan Modra - - * testsuite/ld-elf/pr26580-2.sd: Accept undefined symbol. - -2020-09-10 Alan Modra - - * testsuite/ld-plugin/lto-18b.c (select): Remove. - * testsuite/ld-plugin/lto-18c.c (select): Remove. - * testsuite/ld-plugin/lto.exp: Build archives for lto-18 too, - and run static versions of the test. - -2020-09-09 Alan Modra - - * testsuite/ld-plugin/lto-18a.c, - * testsuite/ld-plugin/lto-18b.c, - * testsuite/ld-plugin/lto-18c.c, - * testsuite/ld-plugin/lto-18d.c, - * testsuite/ld-plugin/lto-18.out: New test. - * testsuite/ld-plugin/lto.exp: Run it. - -2020-09-08 Jozef Lawrynowicz - - * testsuite/ld-msp430-elf/msp430-elf.exp: Run new tests. - * testsuite/ld-msp430-elf/uleb128.s: New test. - * testsuite/ld-msp430-elf/uleb128_430.d: New test. - * testsuite/ld-msp430-elf/uleb128_430x.d: New test. - -2020-09-08 Alan Modra - - * testsuite/ld-elf/pr26580-a.s, - * testsuite/ld-elf/pr26580-b.s, - * testsuite/ld-elf/pr26580-1.sd, - * testsuite/ld-elf/pr26580-2.sd: New tests - * testsuite/ld-elf/comm-data.exp: Run new tests. - * testsuite/ld-elf/pr26580-a.c, - * testsuite/ld-elf/pr26580-b.c, - * testsuite/ld-elf/pr26580-3.out, - * testsuite/ld-elf/pr26580-4.out: New tests. - * testsuite/ld-elf/shared.exp: Run new tests. - -2020-09-04 Alan Modra - - * testsuite/ld-plugin/lto.exp: Don't run pr15146 tests. - * testsuite/ld-plugin/pr15146.d: Delete. - * testsuite/ld-plugin/pr15146a.c: Delete. - * testsuite/ld-plugin/pr15146b.c: Delete. - * testsuite/ld-plugin/pr15146c.c: Delete. - * testsuite/ld-plugin/pr15146d.c: Delete. - -2020-09-03 H.J. Lu - - * testsuite/config/default.exp: Change NOSANTIZE_CFLAGS to - NOSANITIZE_CFLAGS. - * testsuite/ld-elf/dwarf.exp: Likewise. - * testsuite/ld-elf/indirect.exp: Likewise. - * testsuite/ld-elf/linux-x86.exp: Likewise. - * testsuite/ld-elf/shared.exp: Likewise. - * testsuite/ld-elf/tls.exp: Likewise. - * testsuite/ld-elfcomm/elfcomm.exp: Likewise. - * testsuite/ld-elfvers/vers.exp: Likewise. - * testsuite/ld-elfvsb/elfvsb.exp: Likewise. - * testsuite/ld-elfweak/elfweak.exp: Likewise. - * testsuite/ld-gc/gc.exp: Likewise. - * testsuite/ld-plugin/lto.exp: Likewise. - * testsuite/ld-plugin/plugin.exp: Likewise. - * testsuite/ld-scripts/crossref.exp: Likewise. - * testsuite/ld-selective/selective.exp: Likewise. - * testsuite/ld-shared/shared.exp: Likewise. - * testsuite/ld-size/size.exp: Likewise. - * testsuite/ld-srec/srec.exp: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - -2020-09-03 Nelson Chu - - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-01.d: Remove - the useless `warnings` keywords. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-02.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-03.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-04.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-05.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-06.d: Likewise. - -2020-09-03 Nelson Chu - - * testsuite/ld-riscv-elf/attr-merge-arch-failed-01.d: Update the - message from error to warning. - * testsuite/ld-riscv-elf/attr-merge-arch-failed-02.d: New testcases. - * testsuite/ld-riscv-elf/attr-merge-arch-failed-02a.s: Likewise. - * testsuite/ld-riscv-elf/attr-merge-arch-failed-02b.s: Likewise. - * testsuite/ld-riscv-elf/attr-merge-arch-failed-02c.s: Likewise. - * testsuite/ld-riscv-elf/attr-merge-arch-failed-02d.s: Likewise. - * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Updated. - -2020-09-03 Kito Cheng - - * testsuite/ld-riscv-elf/attr-merge-arch-failed-01.d: Updated. - * testsuite/ld-riscv-elf/attr-merge-arch-failed-01a.s: Likewise. - * testsuite/ld-riscv-elf/attr-merge-arch-failed-01b.s: Likewise. - -2020-09-03 Alan Modra - - * testsuite/ld-scripts/sysroot-prefix.exp (single_sysroot_prefix_test): - Log $scriptname. - -2020-08-30 H.J. Lu - - * testsuite/ld-elf/dwarf.exp: Append $NOSANTIZE_CFLAGS to CFLAGS. - * testsuite/ld-elf/shared.exp: Likewise. - * testsuite/ld-elfvsb/elfvsb.exp: Likewise. - * testsuite/ld-shared/shared.exp: Likewise. - * testsuite/ld-size/size.exp: Likewise. - -2020-08-28 Jozef Lawrynowicz - - * emultempl/msp430.em (input_section_exists): New. - (check_array_section_alignment): New. - (gld${EMULATION_NAME}_finish): New. - * scripttempl/elf32msp430.sc: Add ALIGN directives before the - definition of __*_array_start symbols. - * testsuite/ld-msp430-elf/finiarray-warn.ld: New test. - * testsuite/ld-msp430-elf/finiarray-warn.r: New test. - * testsuite/ld-msp430-elf/initarray-nowarn.ld: New test. - * testsuite/ld-msp430-elf/initarray-warn.ld: New test. - * testsuite/ld-msp430-elf/initarray-warn.r: New test. - * testsuite/ld-msp430-elf/initarray.s: New test. - * testsuite/ld-msp430-elf/msp430-elf.exp: Run new tests. - * testsuite/ld-msp430-elf/preinitarray-warn.ld: New test. - * testsuite/ld-msp430-elf/preinitarray-warn.r: New test. - -2020-08-28 Jozef Lawrynowicz - - * ldmisc.c (vfinfo): Support new "%pU" format specifier. - -2020-08-28 Cooper Qu - - * emulparams/cskyelf.sh: Support attribute section. - * testsuite/ld-csky/tls-le-v1.d: Match .csky.attributes section. - * ld/testsuite/ld-csky/tls-le.d: Likewise. - * testsuite/ld-elf/non-contiguous.ld: Ignore .csky.attributes - section. - -2020-08-28 Nick Clifton - - PR 19011 - * testsuite/lib/ld-lib.exp (ld_link_defsyms): For PE based targets - define the __main and ___main symbols in terms of the main symbol. - -2020-08-28 Alan Modra - - PR 19011 - * testsuite/ld-plugin/plugin.exp: Use modified CFLAGS throughout - file. Add --image-base for pecoff. - -2020-08-28 Nelson Chu - - testsuite/ld-riscv-elf/lib-nopic-01a.s: Use R_RISCV_JAL rather - than R_RISCV_CALL. - testsuite/ld-riscv-elf/lib-nopic-01b.d: Likewise. - testsuite/ld-riscv-elf/lib-nopic-01b.s: Likewise. - -2020-08-27 Jozef Lawrynowicz - - * emultempl/msp430.em: Remove unused variable "buf". - -2020-08-27 Nick Alcock - - * ldlang.c (dump_ctf_errs): Unquote CTF error messages. - (ldlang_open_ctf): Likewise. - (lang_merge_ctf): Likewise. - (lang_write_ctf): Likewise. - * testsuite/ld-ctf/diag-ctf-version-f.d: Adjust. - * testsuite/ld-ctf/diag-cttname-invalid.d: Adjust. - * testsuite/ld-ctf/diag-decompression-failure.d: Adjust. - * testsuite/ld-ctf/diag-parname.d: Adjust. - * testsuite/ld-ctf/diag-unsupported-flag.d: Adjust. - * testsuite/ld-ctf/diag-wrong-magic-number-mixed.d: Adjust. - * testsuite/ld-ctf/diag-wrong-magic-number.d: Adjust. - -2020-08-27 Nick Alcock - - * ldlang.c (lang_ctf_errs_warnings): Support calls with NULL fp. - Adjust for new err parameter to ctf_errwarning_next. Only - check for assertion failures when fp is non-NULL. - (ldlang_open_ctf): Call it on open errors. - * testsuite/ld-ctf/ctf.exp: Always use the C locale to avoid - breaking the diags tests. - -2020-08-27 Jeremy Drake - - PR 19011 - * emultempl/pe.em (DEFAULT_DLL_CHARACTERISTICS): Define. - (pe_dll_characteristics): Initialise to DEFAULT_DLL_CHARACTERISTICS. - (add_options): Add options to disable DLL characteristics. - (list_options): List the new options. - (handle_options): Handle the new options. - * emultempl/pep.em: Similar changes to above. - (NT_EXE_IMAGE_BASE): Default to an address above 4G. - (NT_DLL_IMAGE_BASE, NT_DLL_AUTO_IMAGE_BASE, - (NT_DLL_AUTO_IMAGE_MASK): Likewise. - * ld.texi: Document the new options. - * pe-dll.c (pe_dll_enable_reloc_section): Change to default to - true. - (generate_reloc): Do nothing if there is no reloc section. - (pe_exe_fill_sections): Only assign the reloc section contents if - the section exists. - * testsuite/ld-pe/pe.exp: Add the --disable-reloc-section flag to - the .secrel32 tests. - * testsuite/ld-scripts/provide-8.d: Expect for fail on PE targets. - * NEWS: Mention the change in DLL generation. - -2020-08-26 H.J. Lu - - * testsuite/ld-elf/indirect.exp: Append $NOSANTIZE_CFLAGS to CC. - * testsuite/ld-elf/shared.exp: Likewise. - * testsuite/ld-elfcomm/elfcomm.exp: Likewise. - * testsuite/ld-elfvers/vers.exp: Likewise. - * testsuite/ld-elfvsb/elfvsb.exp: Likewise. - * testsuite/ld-elfweak/elfweak.exp: Likewise. - * testsuite/ld-plugin/lto.exp: Likewise. - * testsuite/ld-plugin/plugin.exp: Likewise. - * testsuite/ld-scripts/crossref.exp: Likewise. - -2020-08-26 Alan Modra - - PR 26499 - * emultempl/spuelf.em (spu_elf_relink): Check for NULL tmp_file_list. - -2020-08-26 Alan Modra - - PR 26431 - * pe-dll.c (auto_export): Don't call bsearch with zero count. - -2020-08-25 Alan Modra - - * testsuite/ld-libs/libs.exp: Don't run on sh-pe, tic30 or tic54x. - * testsuite/ld-scripts/data.d: xfail tic4x and tic54x. - * testsuite/ld-scripts/empty-address-2a.d: xfail tic54x. - * testsuite/ld-scripts/empty-address-2b.d: Likewise. - * testsuite/ld-scripts/include-1.d: xfail tic4x and tic54x. - * testsuite/ld-scripts/provide-1.d: xfail tic54x. - * testsuite/ld-scripts/provide-2.d: Likewise. - * testsuite/ld-scripts/provide-4.d: Likewise. - -2020-08-24 Alan Modra - - * testsuite/ld-sparc/tlssunbin32.rd: Update for new readelf output. - * testsuite/ld-sparc/tlssunbin64.rd: Likewise. - -2020-08-24 Alan Modra - - * testsuite/ld-powerpc/tls32.d: Update for TPREL_HA/LO optimisation. - * testsuite/ld-powerpc/tlsexe32.d: Likewise. - * testsuite/ld-powerpc/tlsldopt32.d: Likewise. - * testsuite/ld-powerpc/tlsmark32.d: Likewise. - * testsuite/ld-powerpc/tlsopt4_32.d: Likewise. - * testsuite/ld-powerpc/tprel.s, - * testsuite/ld-powerpc/tprel.d, - * testsuite/ld-powerpc/tprel32.d: New tests. - * testsuite/ld-powerpc/tprelbad.s, - * testsuite/ld-powerpc/tprelbad.d: New test. - * testsuite/ld-powerpc/powerpc.exp: Run them. - -2020-08-22 H.J. Lu - - PR ld/26382 - * testsuite/ld-elf/pr26302.nd: Updated. - * testsuite/ld-elf/pr26302.rd: New file. - * testsuite/ld-elf/shared.exp: Add a test for readelf -sW. - -2020-08-20 Nick Clifton - - PR 26428 - * testsuite/ld-elf/zlibbegin.rS: Update expected output. - * testsuite/ld-elf/zlibnormal.rS: Likewise. - -2020-08-16 Alan Modra - - * testsuite/ld-powerpc/inline.s, - * testsuite/ld-powerpc/inline-1.d, - * testsuite/ld-powerpc/inline-2.d, - * testsuite/ld-powerpc/inline-3.d, - * testsuite/ld-powerpc/inline-4.d, - * testsuite/ld-powerpc/inlinepcrel.s, - * testsuite/ld-powerpc/inlinepcrel-1.d, - * testsuite/ld-powerpc/inlinepcrel-2.d, - * testsuite/ld-powerpc/inlinepcrel-3.d: New tests. - * testsuite/ld-powerpc/powerpc.exp: Run them. - -2020-08-16 H.J. Lu - - PR binutils/26389 - * testsuite/ld-plugin/lto.exp: Run PR binutils/26389 test. - * testsuite/ld-plugin/pr26389.c: New file. - * testsuite/ld-plugin/pr26389.d: Likewise. - -2020-08-14 Tamar Christina - - * testsuite/ld-arm/thumb-plt-got.d: Relax regexpr. - * testsuite/ld-arm/thumb-plt.d: Likewise. - -2020-08-13 Alan Modra - - * emultempl/ppc64elf.em (params): Init new field. - (enum ppc64_opt): Add OPTION_NO_PCREL_OPT. - (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS), - (PARSE_AND_LIST_ARGS_CASES): Support --no-pcrel-optimize. - -2020-08-10 Nick Clifton - - PR ld/21351 - * ld.texi: Clarify the behaviour of the --relax and --no-relax - options on systems that do not support them. - -2020-08-10 H.J. Lu - - PR binutils/26302 - * testsuite/ld-elf/pr26302.nd: New file. - * testsuite/ld-elf/pr26302.ver: Likewise. - * testsuite/ld-elf/pr26302a.c: Likewise. - * testsuite/ld-elf/pr26302b.c: Likewise. - * testsuite/ld-elf/shared.exp: Run binutils/26302 tests. - -2020-08-07 David Faust - - * testsuite/ld-bpf/call-3.s: New file. - * testsuite/ld-bpf/call-3.d: Likewise. - -2020-08-05 David Faust - - * testsuite/ld-bpf/call-2.s: New file. - * testsuite/ld-bpf/call-2.d: Likewise. - * testsuite/ld-bpf/reloc-data-be.d: Likewise. - * testsuite/ld-bpf/reloc-data-le.d: Likewise. - * testsuite/ld-bpf/reloc-data.s: Likewise. - * testsuite/ld-bpf/reloc-insn-external-be.d: Likewise. - * testsuite/ld-bpf/reloc-insn-external-le.d: Likewise. - * testsuite/ld-bpf/reloc-insn-external.s: Likewise. - * testsuite/ld-bpf/reloc-insn32-be.d: Likewise. - * testsuite/ld-bpf/reloc-insn32-le.d: Likewise. - * testsuite/ld-bpf/reloc-insn32.s: Likewise. - * testsuite/ld-bpf/reloc-insn64-be.d: Likewise. - * testsuite/ld-bpf/reloc-insn64-le.d: Likewise. - * testsuite/ld-bpf/reloc-insn64.s: Likewise. - -2020-08-06 Jozef Lawrynowicz - - * emultempl/msp430.em (change_output_section): Update the tail - of the output section statement list when moving the original - tail to a different output section. - (eval_upper_either_sections): Don't move sections from the upper - region to the lower region unless the upper region is - overflowing. - -2020-08-03 Alan Modra - - * ldlex.l (yy_create_string_buffer): Use xmalloc rather than malloc. - * lexsup.c (parse_args): Likewise. - -2020-08-03 Alan Modra - - PR 26328 - * configure.ac: AC_CHECK_DECLS asprintf. - * configure: Regenerate. - * config.in: Regenerate. - -2020-08-03 Alan Modra - - * testsuite/ld-elfvers/vers.exp (objdump_symstuff): Remove unused - variable. Init list_a and list_b to empty. - (objdump_dynsymstuff): Likewise, and remove undefined list_a - handling. - * testsuite/ld-elfweak/elfweak.exp (objdump_symstuff): Similarly. - (objdump_dynsymstuff): Similarly. - -2020-07-31 H.J. Lu - - * testsuite/ld-elf/indirect.exp: Append -fno-lto to CC. - * testsuite/ld-elfvers/vers.exp: Likewise. - * testsuite/ld-elfweak/elfweak.exp: Likewise. - * testsuite/ld-ifunc/ifunc.exp: Likewise. - * testsuite/ld-plugin/lto.exp (no_lto): New. - Add $no_lto to build pr15146c.so. - * testsuite/lib/ld-lib.exp (at_least_gcc_version): Filter out - -Wl,xxx options. - (check_gcc_plugin_enabled): Likewise. - (run_ld_link_exec_tests): Prepend -fno-lto to $cflags. - (run_cc_link_tests): Likewise. - -2020-07-31 Shahab Vahedi - - * scripttempl/elfarc.sc (.init_array): Keep ".init_array.*". - (.fini_array): Keep ".fini_array.*". - -2020-07-30 Rainer Orth - - * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. - * Makefile.in: Regenerate. - * configure: Regenerate. - -2020-07-29 Maciej W. Rozycki - - * testsuite/ld-elf/sec64k.exp: Also accept a section symbol with - a name. - * testsuite/ld-mips-elf/global-local-symtab-sort-o32.d: New - test. - * testsuite/ld-mips-elf/global-local-symtab-sort-o32t.d: New - test. - * testsuite/ld-mips-elf/global-local-symtab-sort-n32.d: New - test. - * testsuite/ld-mips-elf/global-local-symtab-sort-n32t.d: New - test. - * testsuite/ld-mips-elf/global-local-symtab-sort-n64.d: New - test. - * testsuite/ld-mips-elf/global-local-symtab-sort-n64t.d: New - test. - * testsuite/ld-mips-elf/global-local-symtab-final-o32.d: New - test. - * testsuite/ld-mips-elf/global-local-symtab-final-n32.d: New - test. - * testsuite/ld-mips-elf/global-local-symtab-final-n64.d: New - test. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. - -2020-07-29 Maciej W. Rozycki - - * testsuite/ld-mips-elf/global-local-symtab-o32.d: New test. - * testsuite/ld-mips-elf/global-local-symtab-o32t.d: New test. - * testsuite/ld-mips-elf/global-local-symtab-n32.d: New test. - * testsuite/ld-mips-elf/global-local-symtab-n32t.d: New test. - * testsuite/ld-mips-elf/global-local-symtab-n64.d: New test. - * testsuite/ld-mips-elf/global-local-symtab.ld: New test linker - script. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. - -2020-07-29 Alan Modra - - * ldelf.c (ldelf_before_place_orphans): Set SEC_EXCLUDE for - discarded sections. - -2020-07-28 Alan Modra - - * ldlang.c (lang_check): Don't complain about relocs or merge - attributes from --just-symbols input. - * testsuite/ld-misc/just-symbols.exp: Just dump .data section. - Don't run test on a number of targets. - -2020-07-28 Alan Modra - - * testsuite/ld-misc/just-symbols-1.dd: Revert last change. - -2020-07-27 Alan Modra - - * testsuite/ld-misc/just-symbols.exp: Run for x86_64 PE too. - Set LDFLAGS for PE and XCOFF. - * testsuite/ld-misc/just-symbols.ld: Accept XCOFF mapped .data. - * testsuite/ld-misc/just-symbols-1.dd: Don't check format or - "Contents of section" lines. - -2020-07-27 Alan Modra - - * testsuite/lib/ld-lib.exp (check_ctf_available): Check first that - target compiler is available. - -2020-07-23 Maciej W. Rozycki - - PR ld/26288 - * ldelf.c (ldelf_after_open): Do not reject ET_EXEC input - supplied with `--just-symbols'. - * testsuite/ld-misc/just-symbols.exp: New test script. - * testsuite/ld-misc/just-symbols-1.dd: New test dump. - * testsuite/ld-misc/just-symbols.ld: New test linker script. - * testsuite/ld-misc/just-symbols-0.s: New test source. - * testsuite/ld-misc/just-symbols-1.s: New test source. - -2020-07-23 Maciej W. Rozycki - - PR ld/26288 - - Revert: - PR 26047 - * ldelf.c (ldelf_after_open): Fail if attempting to link one - executable into another. - -2020-07-22 Nick Alcock - - * testsuite/ld-ctf/ctf.exp: Skip on non-ELF for now. - -2020-07-22 Nick Alcock - - * ldlang.c (ldlang_open_ctf): Set SEC_EXCLUDE on all but the - first input .ctf section. - -2020-07-22 Nick Alcock - - * configure.ac (enable_libctf): Substitute it. - * Makefile.am (enablings.exp): New. - (EXTRA_DEJAGNU_SITE_CONFIG): Add it. - (DISTCLEANFILES): Likewise. - * Makefile.in: Regenerate. - * configure: Likewise. - * testsuite/lib/ld-lib.exp (compile_one_cc): New. - (check_ctf_available): Likewise. - (skip_ctf_tests): Likewise. - * testsuite/ld-ctf/ctf.exp: Call skip_ctf_tests. - -2020-07-22 Egeyar Bagcioglu - - * testsuite/ld-ctf/ctf.exp: New file. - * testsuite/ld-ctf/A-2.c: New file. - * testsuite/ld-ctf/A.c: New file. - * testsuite/ld-ctf/B-2.c: New file. - * testsuite/ld-ctf/B.c: New file. - * testsuite/ld-ctf/C-2.c: New file. - * testsuite/ld-ctf/C.c: New file. - * testsuite/ld-ctf/array-char.c: New file. - * testsuite/ld-ctf/array-int.c: New file. - * testsuite/ld-ctf/array.d: New file. - * testsuite/ld-ctf/child-float.c: New file. - * testsuite/ld-ctf/child-int.c: New file. - * testsuite/ld-ctf/conflicting-cycle-1.B-1.d: New file. - * testsuite/ld-ctf/conflicting-cycle-1.B-2.d: New file. - * testsuite/ld-ctf/conflicting-cycle-1.parent.d: New file. - * testsuite/ld-ctf/conflicting-cycle-2.A-1.d: New file. - * testsuite/ld-ctf/conflicting-cycle-2.A-2.d: New file. - * testsuite/ld-ctf/conflicting-cycle-2.parent.d: New file. - * testsuite/ld-ctf/conflicting-cycle-3.C-1.d: New file. - * testsuite/ld-ctf/conflicting-cycle-3.C-2.d: New file. - * testsuite/ld-ctf/conflicting-cycle-3.parent.d: New file. - * testsuite/ld-ctf/conflicting-enums.d: New file. - * testsuite/ld-ctf/conflicting-typedefs.d: New file. - * testsuite/ld-ctf/cross-tu-1.c: New file. - * testsuite/ld-ctf/cross-tu-2.c: New file. - * testsuite/ld-ctf/cross-tu-conflicting-2.c: New file. - * testsuite/ld-ctf/cross-tu-cyclic-1.c: New file. - * testsuite/ld-ctf/cross-tu-cyclic-2.c: New file. - * testsuite/ld-ctf/cross-tu-cyclic-3.c: New file. - * testsuite/ld-ctf/cross-tu-cyclic-4.c: New file. - * testsuite/ld-ctf/cross-tu-cyclic-conflicting.d: New file. - * testsuite/ld-ctf/cross-tu-cyclic-nonconflicting.d: New file. - * testsuite/ld-ctf/cross-tu-into-cycle.d: New file. - * testsuite/ld-ctf/cross-tu-noncyclic.d: New file. - * testsuite/ld-ctf/cycle-1.c: New file. - * testsuite/ld-ctf/cycle-1.d: New file. - * testsuite/ld-ctf/cycle-2.A.d: New file. - * testsuite/ld-ctf/cycle-2.B.d: New file. - * testsuite/ld-ctf/cycle-2.C.d: New file. - * testsuite/ld-ctf/diag-ctf-version-0.d: New file. - * testsuite/ld-ctf/diag-ctf-version-0.s: New file. - * testsuite/ld-ctf/diag-ctf-version-2-unsupported-feature.d: New file. - * testsuite/ld-ctf/diag-ctf-version-2-unsupported-feature.s: New file. - * testsuite/ld-ctf/diag-ctf-version-f.d: New file. - * testsuite/ld-ctf/diag-ctf-version-f.s: New file. - * testsuite/ld-ctf/diag-cttname-invalid.d: New file. - * testsuite/ld-ctf/diag-cttname-invalid.s: New file. - * testsuite/ld-ctf/diag-cttname-null.d: New file. - * testsuite/ld-ctf/diag-cttname-null.s: New file. - * testsuite/ld-ctf/diag-cuname.d: New file. - * testsuite/ld-ctf/diag-cuname.s: New file. - * testsuite/ld-ctf/diag-decompression-failure.d: New file. - * testsuite/ld-ctf/diag-decompression-failure.s: New file. - * testsuite/ld-ctf/diag-parlabel.d: New file. - * testsuite/ld-ctf/diag-parlabel.s: New file. - * testsuite/ld-ctf/diag-parname.d: New file. - * testsuite/ld-ctf/diag-parname.s: New file. - * testsuite/ld-ctf/diag-unsupported-flag.d: New file. - * testsuite/ld-ctf/diag-unsupported-flag.s: New file. - * testsuite/ld-ctf/diag-wrong-magic-number-mixed.d: New file. - * testsuite/ld-ctf/diag-wrong-magic-number.d: New file. - * testsuite/ld-ctf/diag-wrong-magic-number.s: New file. - * testsuite/ld-ctf/enum-2.c: New file. - * testsuite/ld-ctf/enum.c: New file. - * testsuite/ld-ctf/function.c: New file. - * testsuite/ld-ctf/function.d: New file. - * testsuite/ld-ctf/slice.c: New file. - * testsuite/ld-ctf/slice.d: New file. - * testsuite/ld-ctf/super-sub-cycles.c: New file. - * testsuite/ld-ctf/super-sub-cycles.d: New file. - * testsuite/ld-ctf/typedef-int.c: New file. - * testsuite/ld-ctf/typedef-long.c: New file. - * testsuite/ld-ctf/union-1.c: New file. - -2020-07-22 Nick Alcock - - * ldlex.h (option_values) : New. - * ld.h (ld_config_type) : - New fields. - * ldlang.c (lang_merge_ctf): Use them. - * lexsup.c (ld_options): Add ctf-variables, no-ctf-variables, - ctf-share-types. - (parse_args) : New cases. - * ld.texi: Document new options. - * NEWS: Likewise. - -2020-07-22 Egeyar Bagcioglu - - * ldlang.c (lang_merge_ctf): Turn errors into warnings. - Fix a comment typo. - (lang_write_ctf): Turn an error into a warning. - (ldlang_open_ctf): Reformat warnings. Fix printing file names. - -2020-07-22 Nick Alcock - - * ldlang.c (lang_ctf_errs_warnings): New, print CTF errors - and warnings. Assert when libctf asserts. - (lang_merge_ctf): Call it. - (land_write_ctf): Likewise. - -2020-07-22 H.J. Lu - - PR ld/26262 - PR ld/26267 - * ldlang.c (lang_process): Set lto_all_symbols_read after all - LTO IR symbols have been read. - * plugin.c (plugin_notice): Override the IR definition only if - all LTO IR symbols have been read or the new definition is - non-weak and the the IR definition is weak - * testsuite/ld-plugin/lto.exp: Run PR ld/26262 and ld/26267 - tests. - * testsuite/ld-plugin/pr26262a.c: New file. - * testsuite/ld-plugin/pr26262b.c: Likewise. - * testsuite/ld-plugin/pr26262c.c: Likewise. - * testsuite/ld-plugin/pr26267.err: Likewise. - * testsuite/ld-plugin/pr26267a.c: Likewise. - * testsuite/ld-plugin/pr26267b.c: Likewise. - * testsuite/ld-plugin/pr26267c.c: Likewise. - -2020-07-20 Nick Clifton - - * testsuite/ld-powerpc/powerpc.exp (ppcelftests): Use section name - .PPC.EMB.apuinfo instead of section number 2 in apuinfo tests. - -2020-07-20 Alan Modra - - PR 26265 - * ldlang.c (undef_from_cmdline): Delete. - (ldlang_add_undef): Mark "cmdline" param unused. - (lang_end): Traverse gc_sym_list to determine whether a symbol root - has been specified. Update error message. - * testsuite/ld-gc/noent.d: Adjust for changed error message. - -2020-07-20 H.J. Lu - - PR gas/26263 - * testsuite/ld-i386/pr26263.d: Updated. - * testsuite/ld-x86-64/pr26263.d: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run gas/26263 test for all ELF - targets. - -2020-07-19 H.J. Lu - - PR gas/26263 - * testsuite/ld-i386/i386.exp: Run PR gas/26263 test. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr26263.d: New file. - * testsuite/ld-x86-64/pr26263.d: Likewise. - * testsuite/ld-x86-64/pr26263.s: Likewise. - -2020-07-19 Hans-Peter Nilsson - - * scripttempl/elf.sc (ETEXT_LAST_IN_RODATA_SEGMENT): New variable. - * emulparams/elf64mmix.sh (ETEXT_LAST_IN_RODATA_SEGMENT): Define. - * testsuite/ld-mmix/sec-1.d: Adjust. - -2020-07-19 Alan Modra - - * emultempl/ppc64elf.em (power10-stubs): Accept optional "auto" arg. - * ld.texi (power10-stubs): Update. - * testsuite/ld-powerpc/callstub-1.d: Force --power10-stubs. - * testsuite/ld-powerpc/callstub-2.d: Relax branch offset comparison. - * testsuite/ld-powerpc/callstub-4.d: New test. - * testsuite/ld-powerpc/notoc.d: Force --no-power10-stubs. - * testsuite/ld-powerpc/notoc3.d, - * testsuite/ld-powerpc/notoc3.s, - * testsuite/ld-powerpc/notoc3.wf: New test. - * testsuite/ld-powerpc/powerpc.exp: Run new tests. Pass - --no-power10-stubs for notoc link. - -2020-07-17 Hans-Peter Nilsson - - * scripttempt/mmo.sc: Move .init first in .text output section. - * testsuite/ld-mmix/bpo-9m.d: Adjust accordingly. - -2020-07-15 Jan Beulich - - * testsuite/ld-i386/ibt-plt-1.d, testsuite/ld-i386/ibt-plt-2a.d, - testsuite/ld-i386/ibt-plt-2c.d, testsuite/ld-i386/ibt-plt-3a.d, - testsuite/ld-i386/ibt-plt-3c.d, testsuite/ld-i386/plt-pic.pd, - testsuite/ld-i386/plt-pic2.dd, testsuite/ld-i386/plt.pd, - testsuite/ld-i386/plt2.dd, testsuite/ld-i386/pr19636-1d.d, - testsuite/ld-i386/pr19636-1l.d, testsuite/ld-i386/pr19636-2c.d, - testsuite/ld-i386/pr20830.d, testsuite/ld-i386/vxworks1-lib.dd, - testsuite/ld-i386/vxworks1.dd, - testsuite/ld-ifunc/ifunc-2-i386-now.d, - testsuite/ld-ifunc/ifunc-2-local-i386-now.d, - testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d, - testsuite/ld-ifunc/ifunc-2-x86-64-now.d, - testsuite/ld-ifunc/ifunc-21-x86-64.d, - testsuite/ld-ifunc/ifunc-22-x86-64.d, - testsuite/ld-ifunc/pr17154-i386-now.d, - testsuite/ld-ifunc/pr17154-i386.d, - testsuite/ld-ifunc/pr17154-x86-64-now.d, - testsuite/ld-ifunc/pr17154-x86-64.d, - testsuite/ld-x86-64/align-branch-1.d, - testsuite/ld-x86-64/bnd-branch-1-now.d, - testsuite/ld-x86-64/bnd-branch-1.d, - testsuite/ld-x86-64/bnd-ifunc-1-now.d, - testsuite/ld-x86-64/bnd-ifunc-1.d, - testsuite/ld-x86-64/bnd-ifunc-2-now.d, - testsuite/ld-x86-64/bnd-ifunc-2.d, - testsuite/ld-x86-64/bnd-plt-1-now.d, - testsuite/ld-x86-64/bnd-plt-1.d, - testsuite/ld-x86-64/call1a.d, testsuite/ld-x86-64/call1b.d, - testsuite/ld-x86-64/call1d.d, testsuite/ld-x86-64/call1e.d, - testsuite/ld-x86-64/call1f.d, testsuite/ld-x86-64/call1g.d, - testsuite/ld-x86-64/call1h.d, testsuite/ld-x86-64/call1i.d, - testsuite/ld-x86-64/gotpcrel1.dd, - testsuite/ld-x86-64/hidden2.d, - testsuite/ld-x86-64/ibt-plt-1-x32.d, - testsuite/ld-x86-64/ibt-plt-1.d, - testsuite/ld-x86-64/ibt-plt-2a-x32.d, - testsuite/ld-x86-64/ibt-plt-2a.d, - testsuite/ld-x86-64/ibt-plt-2c-x32.d, - testsuite/ld-x86-64/ibt-plt-2c.d, - testsuite/ld-x86-64/ibt-plt-3a-x32.d, - testsuite/ld-x86-64/ibt-plt-3a.d, - testsuite/ld-x86-64/ibt-plt-3c-x32.d, - testsuite/ld-x86-64/ibt-plt-3c.d, - testsuite/ld-x86-64/libno-plt-1b.dd, - testsuite/ld-x86-64/mpx3.dd, testsuite/ld-x86-64/mpx3n.dd, - testsuite/ld-x86-64/mpx4.dd, testsuite/ld-x86-64/mpx4n.dd, - testsuite/ld-x86-64/no-plt-1a.dd, - testsuite/ld-x86-64/no-plt-1b.dd, - testsuite/ld-x86-64/no-plt-1c.dd, - testsuite/ld-x86-64/no-plt-1d.dd, - testsuite/ld-x86-64/no-plt-1e.dd, - testsuite/ld-x86-64/no-plt-1f.dd, - testsuite/ld-x86-64/no-plt-1g.dd, - testsuite/ld-x86-64/plt-main-bnd.dd, - testsuite/ld-x86-64/plt-main-ibt-x32.dd, - testsuite/ld-x86-64/plt-main-ibt.dd, - testsuite/ld-x86-64/plt.pd, testsuite/ld-x86-64/plt2.dd, - testsuite/ld-x86-64/pr19609-5a.d, - testsuite/ld-x86-64/pr19609-5b.d, - testsuite/ld-x86-64/pr19609-5c.d, - testsuite/ld-x86-64/pr19609-5e.d, - testsuite/ld-x86-64/pr19609-7b.d, - testsuite/ld-x86-64/pr19609-7d.d, - testsuite/ld-x86-64/pr19636-2d.d, - testsuite/ld-x86-64/pr19636-2l.d, - testsuite/ld-x86-64/pr20253-1b.d, - testsuite/ld-x86-64/pr20253-1d.d, - testsuite/ld-x86-64/pr20253-1f.d, - testsuite/ld-x86-64/pr20253-1h.d, - testsuite/ld-x86-64/pr20253-1j.d, - testsuite/ld-x86-64/pr20253-1l.d, - testsuite/ld-x86-64/pr20830a-now.d, - testsuite/ld-x86-64/pr20830a.d, - testsuite/ld-x86-64/pr20830b-now.d, - testsuite/ld-x86-64/pr20830b.d, - testsuite/ld-x86-64/pr21038a-now.d, - testsuite/ld-x86-64/pr21038a.d, - testsuite/ld-x86-64/pr21038b-now.d, - testsuite/ld-x86-64/pr21038b.d, - testsuite/ld-x86-64/pr21038c-now.d, - testsuite/ld-x86-64/pr21038c.d, - testsuite/ld-x86-64/pr23930-x32.d, - testsuite/ld-x86-64/pr23930.d, - testsuite/ld-x86-64/pr25416-1a.d, - testsuite/ld-x86-64/pr25416-2a.d, - testsuite/ld-x86-64/pr26018.d, - testsuite/ld-x86-64/protected2-k1om.d, - testsuite/ld-x86-64/protected2-l1om.d, - testsuite/ld-x86-64/protected2.d, - testsuite/ld-x86-64/protected3.d, - testsuite/ld-x86-64/protected8.d, - testsuite/ld-x86-64/tlsbin.dd, testsuite/ld-x86-64/tlsbin2.dd, - testsuite/ld-x86-64/tlsbindesc.dd, - testsuite/ld-x86-64/tlsdesc.dd, - testsuite/ld-x86-64/tlsdesc.pd, - testsuite/ld-x86-64/tlsgd10.dd, - testsuite/ld-x86-64/tlsgd7.dd, testsuite/ld-x86-64/tlsgd8.dd, - testsuite/ld-x86-64/tlsgd9.dd, - testsuite/ld-x86-64/tlsgdesc.dd, - testsuite/ld-x86-64/tlsld3.dd, testsuite/ld-x86-64/tlsld4.dd, - testsuite/ld-x86-64/tlspic.dd, testsuite/ld-x86-64/tlspic2.dd, - testsuite/ld-x86-64/tlspie2b.d, testsuite/ld-x86-64/tlspie2c.d: - Adjust expectations. - -2020-07-15 Hans-Peter Nilsson - - * testsuite/ld-mmix/undef-1.d, testsuite/ld-mmix/undef-1m.d, - testsuite/ld-mmix/undef-2.d, testsuite/ld-mmix/undef-2m.d: Add - start- and end-anchors to error-string to match just a - single-line error-message. - -2020-07-13 Alan Modra - - * testsuite/ld-scripts/default-script1.d: Don't skip, xfail - using is_pecoff_format. - * testsuite/ld-scripts/default-script2.d: Likewise. - * testsuite/ld-scripts/default-script3.d: Likewise. - * testsuite/ld-scripts/default-script4.d: Likewise. - * testsuite/ld-scripts/pr20302.d: Remove x86_64-*-cygwin from notarget. - * testsuite/ld-scripts/provide-6.d: Remove x86_64-*-cygwin from xfail. - * testsuite/ld-scripts/provide-8.d: Likewise. - -2020-07-10 Alan Modra - - * ld.texi (PowerPC64 ELF64): Document --no-inline-optimize, - --power10-stubs and --no-power10-stubs. - -2020-07-10 Alan Modra - - * emultempl/ppc64elf.em (params): Init new field. - (enum ppc64_opt): Add OPTION_POWER10_STUBS and OPTION_NO_POWER10_STUBS. - (PARSE_AND_LIST_LONGOPTS): Support --power10-stubs and - --no-power10-stubs. - (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise. - * testsuite/ld-powerpc/callstub-3.d: New test. - * testsuite/ld-powerpc/powerpc.exp: Run it. - -2020-07-09 Alan Modra - - * emulparams/ppcpe.sh: Delete. - * scripttempl/ppcpe.sc: Delete. - * emulparams/ppclynx.sh: Delete. - * Makefile.am (ALL_EMULATION_SOURCES): Remove ppc PE and lynxos. - * configure.tgt: Likewise. - * emultempl/beos.em: Remove powerpc PE support. - * emultempl/pe.em: Likewise. - * po/BLD-POTFILES.in: Regenerate. - * Makefile.in: Regenerate. - -2020-07-09 Alan Modra - - * testsuite/ld-gc/gc.exp: Don't set -mminimal-toc for powerpc64, - and remove powerpc64 xfail. Use -fno-PIE for ppc32. - -2020-07-09 Alan Modra - - PR 18841 - * testsuite/ld-ifunc/ifunc.exp: Run pr18841 tests non-pie. - -2020-07-08 Alan Modra - - * testsuite/lib/ld-lib.exp (ar_simple_create): Pass options before - ar command. - * testsuite/ld-powerpc/aix52.exp: Run for rs6000-aix5.2. Update - match files. - * testsuite/ld-powerpc/aix-abs-branch-1.dd: Update. - * testsuite/ld-powerpc/aix-core-sec-1.hd: Update. - * testsuite/ld-powerpc/aix-gc-1-32.dd: Update. - * testsuite/ld-powerpc/aix-gc-1-64.dd: Update. - * testsuite/ld-powerpc/aix-glink-1-32.dd: Update. - * testsuite/ld-powerpc/aix-glink-1-64.dd: Update. - * testsuite/ld-powerpc/aix-glink-2-32.dd: Update. - * testsuite/ld-powerpc/aix-glink-2-64.dd: Update. - * testsuite/ld-powerpc/aix-no-dup-syms-1-rel.rd: Update. - * testsuite/ld-powerpc/aix-ref-1-32.od: Update. - * testsuite/ld-powerpc/aix-ref-1-64.od: Update. - * testsuite/ld-powerpc/aix-toc-1-32.dd: Update. - * testsuite/ld-powerpc/aix-toc-1-64.dd: Update. - * testsuite/ld-powerpc/aix-weak-3-32.dd: Update. - * testsuite/ld-powerpc/aix-weak-3-64.dd: Update. - * testsuite/ld-powerpc/aix-abs-branch-1.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-abs-branch-1-32.nd, - * testsuite/ld-powerpc/aix-abs-branch-1-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-abs-reloc-1.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-abs-reloc-1-32.nd, - * testsuite/ld-powerpc/aix-abs-reloc-1-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-abs-reloc-1.od: Delete, replace with.. - * testsuite/ld-powerpc/aix-abs-reloc-1-32.od, - * testsuite/ld-powerpc/aix-abs-reloc-1-64.od: ..these new files. - * testsuite/ld-powerpc/aix-export-1-all.dd: Delete, replace with.. - * testsuite/ld-powerpc/aix-export-1-all-32.dd, - * testsuite/ld-powerpc/aix-export-1-all-64.dd: ..these new files. - * testsuite/ld-powerpc/aix-export-1-full.dd: Delete, replace with.. - * testsuite/ld-powerpc/aix-export-1-full-32.dd, - * testsuite/ld-powerpc/aix-export-1-full-64.dd: ..these new files. - * testsuite/ld-powerpc/aix-export-2.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-export-2-32.nd, - * testsuite/ld-powerpc/aix-export-2-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-gc-1.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-gc-1-32.nd, - * testsuite/ld-powerpc/aix-gc-1-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-glink-3.dd: Delete, replace with.. - * testsuite/ld-powerpc/aix-glink-3-32.dd, - * testsuite/ld-powerpc/aix-glink-3-64.dd: ..these new files. - * testsuite/ld-powerpc/aix-lineno-1a.dd: Delete, replace with.. - * testsuite/ld-powerpc/aix-lineno-1a-32.dd, - * testsuite/ld-powerpc/aix-lineno-1a-64.dd: ..these new files. - * testsuite/ld-powerpc/aix-lineno-1a.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-lineno-1a-32.nd, - * testsuite/ld-powerpc/aix-lineno-1a-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-lineno-1b.dd: Delete, replace with.. - * testsuite/ld-powerpc/aix-lineno-1b-32.dd, - * testsuite/ld-powerpc/aix-lineno-1b-64.dd: ..these new files. - * testsuite/ld-powerpc/aix-lineno-1b.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-lineno-1b-32.nd, - * testsuite/ld-powerpc/aix-lineno-1b-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.dnd: Delete, replace with.. - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.dnd, - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.dnd: ..these new files. - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.drd: Delete, replace with.. - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.drd, - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.drd: ..these new files. - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.nd, - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.rd: Delete, replace with.. - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.rd, - * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.rd: ..these new files. - * testsuite/ld-powerpc/aix-weak-1-dso.dnd: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-1-dso-32.dnd, - * testsuite/ld-powerpc/aix-weak-1-dso-64.dnd: ..these new files. - * testsuite/ld-powerpc/aix-weak-1-dso.hd: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-1-dso-32.hd, - * testsuite/ld-powerpc/aix-weak-1-dso-64.hd: ..these new files. - * testsuite/ld-powerpc/aix-weak-1-dso.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-1-dso-32.nd, - * testsuite/ld-powerpc/aix-weak-1-dso-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-weak-1-gcdso.dnd: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-1-gcdso-32.dnd, - * testsuite/ld-powerpc/aix-weak-1-gcdso-64.dnd: ..these new files. - * testsuite/ld-powerpc/aix-weak-1-gcdso.hd: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-1-gcdso-32.hd, - * testsuite/ld-powerpc/aix-weak-1-gcdso-64.hd: ..these new files. - * testsuite/ld-powerpc/aix-weak-1-gcdso.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-1-gcdso-32.nd, - * testsuite/ld-powerpc/aix-weak-1-gcdso-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-weak-2a.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-2a-32.nd, - * testsuite/ld-powerpc/aix-weak-2a-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-weak-2b.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-2b-32.nd, - * testsuite/ld-powerpc/aix-weak-2b-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-weak-2c.nd: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-2c-32.nd, - * testsuite/ld-powerpc/aix-weak-2c-64.nd: ..these new files. - * testsuite/ld-powerpc/aix-weak-2c.od: Delete, replace with.. - * testsuite/ld-powerpc/aix-weak-2c-32.od, - * testsuite/ld-powerpc/aix-weak-2c-64.od: ..these new files. - -2020-07-07 Alan Modra - - * testsuite/ld-scripts/section-match-1.d: xfail h8300. - -2020-07-07 Alan Modra - - * testsuite/ld-scripts/align.exp: Don't exclude xcoff. Pass - -bnogc ld option for xcoff. - * testsuite/ld-scripts/provide.exp: Likewise. - * testsuite/ld-scripts/data.exp: Pass -bnogc ld option for xcoff. - * testsuite/ld-scripts/default-script.exp: Likewise. - * testsuite/ld-scripts/defined.exp: Likewise. - * testsuite/ld-scripts/empty-address.exp: Likewise. - * testsuite/ld-scripts/expr.exp: Likewise. - * testsuite/ld-scripts/include.exp: Likewise. - * testsuite/ld-scripts/script.exp: Likewise. - * testsuite/ld-scripts/assign-loc.d: Don't exclude xcoff. - * testsuite/ld-scripts/defined3.d: Likewise. - * testsuite/ld-scripts/defined4.d: Likewise. - * testsuite/ld-scripts/pr18963.d: Likewise. - * testsuite/ld-scripts/sane1.d: Likewise. - * testsuite/ld-scripts/segment-start.d: Likewise. - * testsuite/ld-scripts/include-1.d: Likewise, and relax text vma. - * testsuite/ld-scripts/defined5.d: Update xfail and comment. - * testsuite/ld-scripts/defined5.s: Tweak "defined" to be at - non-zero section offset. - * testsuite/ld-scripts/fill16.d: xfail for xcoff. - * testsuite/ld-scripts/provide-2.d: Accept more symbols. - * testsuite/ld-scripts/provide-4.d: Likewise. - * testsuite/ld-scripts/provide-5.d: Likewise. - * testsuite/ld-scripts/provide-6.d: Likewise. - * testsuite/ld-scripts/provide-7.d: Likewise. - * testsuite/ld-scripts/align.t: Accept xcoff mapped .text and .data. - * testsuite/ld-scripts/defined3.t: Likewise. - * testsuite/ld-scripts/defined4.t: Likewise. - * testsuite/ld-scripts/defined5.t: Likewise. - * testsuite/ld-scripts/fill.t: Likewise. - * testsuite/ld-scripts/include-subdata.t: Likewise. - * testsuite/ld-scripts/provide-1.t: Likewise. - * testsuite/ld-scripts/provide-2.t: Likewise. - * testsuite/ld-scripts/provide-3.t: Likewise. - * testsuite/ld-scripts/provide-4.t: Likewise. - * testsuite/ld-scripts/provide-5.t: Likewise. - * testsuite/ld-scripts/provide-6.t: Likewise. - * testsuite/ld-scripts/provide-7.t: Likewise. - * testsuite/ld-scripts/provide-8.t: Likewise. - * testsuite/ld-scripts/assign-loc.t: Add required xcoff sections. - * testsuite/ld-scripts/sizeof.t: Likewise. - * testsuite/ld-scripts/align2.t: Likewise, and mapped sections. - * testsuite/ld-scripts/align5.t: Likewise. - * testsuite/ld-scripts/default-script.t: Likewise. - * testsuite/ld-scripts/empty-address-1.t: Likewise. - * testsuite/ld-scripts/empty-address-2a.t: Likewise. - * testsuite/ld-scripts/empty-address-2b.t: Likewise. - * testsuite/ld-scripts/empty-address-3a.t: Likewise. - * testsuite/ld-scripts/empty-address-3b.t: Likewise. - * testsuite/ld-scripts/empty-address-3c.t: Likewise. - * testsuite/ld-scripts/include-sections.t: Likewise. - * testsuite/ld-scripts/pr14962.t: Likewise. - * testsuite/ld-scripts/sane1.t: Likewise. - -2020-07-07 Alan Modra - - * testsuite/ld-scripts/align.exp: Use is_pecoff_format. - * testsuite/ld-scripts/defined.exp: Likewise. - * testsuite/ld-scripts/provide.exp: Likewise. - * testsuite/ld-scripts/weak.exp: Likewise. - * testsuite/ld-scripts/empty-address.exp: Likewise. Reset LDFLAGS - on exit. - * testsuite/ld-scripts/expr.exp: Set LDFLAGS earlier, and with - --image-base for PE. - * testsuite/ld-scripts/include.exp: Set LDFLAGS for PE. - * testsuite/ld-scripts/script.exp: Use is_pecoff_format, and - set LDFLAGS as well as flags. - -2020-07-07 Alan Modra - - * testsuite/ld-checks/checks.exp: Use is_xcoff_format. - * testsuite/ld-powerpc/powerpc.exp: Likewise. - * testsuite/ld-scripts/print-memory-usage.exp: Likewise. - * testsuite/ld-srec/srec.exp: Likewise. - * testsuite/ld-undefined/require-defined.exp: Likewise. - * testsuite/ld-scripts/expr2.d: Likewise. - * testsuite/ld-scripts/section-match-1.d: Only run for ELF. - * testsuite/ld-elfvers/vers.exp: Delete dead code. - * testsuite/ld-elfvsb/elfvsb.exp: Likewise. - * testsuite/ld-elfweak/elfweak.exp: Likewise. - -2020-07-07 Alan Modra - - * emultempl/aix.em (gld${EMULATION_NAME}_find_exp_assignment): Handle - etree_provided. - -2020-07-07 Alan Modra - - * testsuite/ld-sh/vxworks1-lib.rd: Update expected output. - * testsuite/ld-sh/vxworks4.d: Likewise. - -2020-07-06 Yuri Chornoivan - - PR 26204 - * lexsup.c: Fix spelling mistake. - * po/ld.pot: Regenerate. - -2020-07-06 Nick Clifton - - * po/bg.po: Updated Bulgarian translation. - * po/fr.po: Updated French translation. - * po/pt_BR.po: Updated Brazilian Portuguese translation. - * po/uk.po: Updated Ukranian translation. - -2020-07-04 Nick Clifton - - * configure: Regenerate. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-07-03 Alan Modra - - PR 26028 - * testsuite/ld-arm/arm-elf.exp (vxworks1): Pass --wide to readelf - when dumping relocs. - * testsuite/ld-i386/i386.exp (vxworks1): Likewise. - * testsuite/ld-sh/sh-vxworks.exp (vxworks1): Likewise. - * testsuite/ld-sparc/sparc.exp (vxworks1): Likewise. - * testsuite/ld-arm/vxworks1.rd: Adjust to suit. - * testsuite/ld-i386/vxworks1.rd: Adjust. - * testsuite/ld-sh/vxworks1.rd: Adjust. - * testsuite/ld-sparc/vxworks1.rd: Adjust. - -2020-07-02 Nick Clifton - - PR 26028 - * testsuite/ld-powerpc/powerpc.exp: Add -T option to readelf - command line when running some tests. - * testsuite/ld-arm/arm-elf.exp: Likewise. - * testsuite/ld-mips-elf/mips-elf.exp: Likewise. - * testsuite/ld-mmix/local1.d: Likewise. - * testsuite/ld-mmix/local3.d: Likewise. - * testsuite/ld-mmix/local5.d: Likewise. - * testsuite/ld-mmix/local7.d: Likewise. - * testsuite/ld-powerpc/powerpc.exp: Likewise. - -2020-06-30 H.J. Lu - - * Makefile.am (ALL_EMULATION_SOURCES): Remove eelf_i386_nacl.c, - eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c. - Remove x86 NaCl dep files. - * NEWS: Mention x86 NaCl target support removal. - * configure.tgt: Remove x86 NaCl target support. - * testsuite/ld-elf/binutils.exp: Likewise. - * testsuite/ld-elf/elf.exp: Likewise. - * testsuite/ld-elfvers/vers.exp: Likewise. - * testsuite/ld-i386/align-branch-1.d: Likewise. - * testsuite/ld-i386/export-class.exp: Likewise. - * testsuite/ld-i386/i386.exp: Likewise. - * testsuite/ld-i386/load1.d: Likewise. - * testsuite/ld-i386/pie1.d: Likewise. - * testsuite/ld-i386/pr12570a.d: Likewise. - * testsuite/ld-i386/pr12570b.d: Likewise. - * testsuite/ld-i386/pr19636-1d.d: Likewise. - * testsuite/ld-i386/pr19636-1l.d: Likewise. - * testsuite/ld-i386/pr19636-2c.d: Likewise. - * testsuite/ld-i386/pr19636-2d.d: Likewise. - * testsuite/ld-i386/pr19636-2e.d: Likewise. - * testsuite/ld-i386/pr20244-1a.d: Likewise. - * testsuite/ld-i386/pr20244-1b.d: Likewise. - * testsuite/ld-i386/pr20244-2a.d: Likewise. - * testsuite/ld-i386/pr20244-2b.d: Likewise. - * testsuite/ld-i386/pr20244-2c.d: Likewise. - * testsuite/ld-i386/pr20244-4a.d: Likewise. - * testsuite/ld-i386/pr20244-4b.d: Likewise. - * testsuite/ld-i386/pr21884.d: Likewise. - * testsuite/ld-ifunc/binutils.exp: Likewise. - * testsuite/ld-ifunc/ifunc-10-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-10-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-11-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-11-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-12-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-12-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-13-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-13-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-14a-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-14a-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-14b-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-14b-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-14c-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-14c-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-14d-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-14d-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-14e-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-14e-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-14f-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-14f-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-15-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-15-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-16-i386-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-16-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-16-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-16-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-17a-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-17a-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-17b-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-17b-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-18a-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-18a-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-18b-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-18b-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-19a-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-19a-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-19b-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-19b-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-local-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-local-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-20-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-20-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-21-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-21-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-22-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-22-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-5a-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-5a-local-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-5a-local-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-5a-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-5b-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-5b-local-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-5b-local-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-5b-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-5r-local-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-5r-local-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-6a-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-6a-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-6b-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-6b-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-7a-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-7a-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-7b-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-7b-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-8-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-8-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-9-i386.d: Likewise. - * testsuite/ld-ifunc/ifunc-9-x86-64.d: Likewise. - * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise. - * testsuite/ld-ifunc/pr17154-i386.d: Likewise. - * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/pr17154-x86-64.d: Likewise. - * testsuite/ld-plugin/lto.exp: Likewise. - * testsuite/ld-x86-64/align-branch-1.d: Likewise. - * testsuite/ld-x86-64/dwarfreloc.exp: Likewise. - * testsuite/ld-x86-64/line.exp: Likewise. - * testsuite/ld-x86-64/load1a.d: Likewise. - * testsuite/ld-x86-64/load1b.d: Likewise. - * testsuite/ld-x86-64/load1c.d: Likewise. - * testsuite/ld-x86-64/load1d.d: Likewise. - * testsuite/ld-x86-64/pie3.d: Likewise. - * testsuite/ld-x86-64/pr18160.d: Likewise. - * testsuite/ld-x86-64/pr19013-x32.d: Likewise. - * testsuite/ld-x86-64/pr19013.d: Likewise. - * testsuite/ld-x86-64/pr19636-2d.d: Likewise. - * testsuite/ld-x86-64/pr19636-2l.d: Likewise. - * testsuite/ld-x86-64/pr20253-1b.d: Likewise. - * testsuite/ld-x86-64/pr20253-1d.d: Likewise. - * testsuite/ld-x86-64/pr20253-1f.d: Likewise. - * testsuite/ld-x86-64/pr20253-1h.d: Likewise. - * testsuite/ld-x86-64/pr20253-1j.d: Likewise. - * testsuite/ld-x86-64/pr20253-1l.d: Likewise. - * testsuite/ld-x86-64/pr21884.d: Likewise. - * testsuite/ld-x86-64/pr22393-3a.rd: Likewise. - * testsuite/ld-x86-64/pr22393-3b.rd: Likewise. - * testsuite/ld-x86-64/tlsgd10.dd: Likewise. - * testsuite/ld-x86-64/tlsgd5.dd: Likewise. - * testsuite/ld-x86-64/tlsgd8.dd: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * emulparams/elf32_x86_64_nacl.sh: Removed. - * emulparams/elf_i386_nacl.sh: Likewise. - * emulparams/elf_x86_64_nacl.sh: Likewise. - * testsuite/ld-i386/emit-relocs-nacl.rd: Likewise. - * testsuite/ld-i386/load1-nacl.d: Likewise. - * testsuite/ld-i386/pie1-nacl.d: Likewise. - * testsuite/ld-i386/plt-nacl.pd: Likewise. - * testsuite/ld-i386/plt-pic-nacl.pd: Likewise. - * testsuite/ld-i386/pr17709-nacl.rd: Likewise. - * testsuite/ld-i386/pr19636-1d-nacl.d: Likewise. - * testsuite/ld-i386/pr19636-2c-nacl.d: Likewise. - * testsuite/ld-i386/pr19636-2d-nacl.d: Likewise. - * testsuite/ld-i386/pr19636-2e-nacl.d: Likewise. - * testsuite/ld-i386/pr19827-nacl.rd: Likewise. - * testsuite/ld-i386/pr21884-nacl.d: Likewise. - * testsuite/ld-i386/pr21884-nacl.t: Likewise. - * testsuite/ld-i386/tlsbin-nacl.rd: Likewise. - * testsuite/ld-i386/tlsbin2-nacl.rd: Likewise. - * testsuite/ld-i386/tlsbindesc-nacl.rd: Likewise. - * testsuite/ld-i386/tlsdesc-nacl.rd: Likewise. - * testsuite/ld-i386/tlsgdesc-nacl.rd: Likewise. - * testsuite/ld-i386/tlsnopic-nacl.rd: Likewise. - * testsuite/ld-i386/tlspic-nacl.rd: Likewise. - * testsuite/ld-i386/tlspic2-nacl.rd: Likewise. - * testsuite/ld-x86-64/ilp32-4-nacl.d: Likewise. - * testsuite/ld-x86-64/load1a-nacl.d: Likewise. - * testsuite/ld-x86-64/load1b-nacl.d: Likewise. - * testsuite/ld-x86-64/load1c-nacl.d: Likewise. - * testsuite/ld-x86-64/load1d-nacl.d: Likewise. - * testsuite/ld-x86-64/pie3-nacl.d: Likewise. - * testsuite/ld-x86-64/plt-nacl.pd: Likewise. - * testsuite/ld-x86-64/pr17709-nacl.rd: Likewise. - * testsuite/ld-x86-64/pr19013-nacl.d: Likewise. - * testsuite/ld-x86-64/pr19636-2d-nacl.d: Likewise. - * testsuite/ld-x86-64/pr19827-nacl.rd: Likewise. - * testsuite/ld-x86-64/pr21884-nacl.d: Likewise. - * testsuite/ld-x86-64/pr21884-nacl.t: Likewise. - * testsuite/ld-x86-64/split-by-file-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsbin-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsbin2-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsbindesc-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsdesc-nacl.pd: Likewise. - * testsuite/ld-x86-64/tlsdesc-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsgdesc-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlspic-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlspic2-nacl.rd: Likewise. - * Makefile.in: Regenerated. - * po/BLD-POTFILES.in: Likewise. - -2020-06-30 Alan Modra - - * testsuite/ld-elf/group1.d: Don't xfail all solaris targets, just - ix86 and x86_64. - -2020-06-30 Alan Modra - - * testsuite/ld-elf/reloc-discard.d: Don't xfail nds32. - -2020-06-30 Alan Modra - - * scripttempl/elfmicroblaze.sc (.data): Add .data.* entry. - * testsuite/ld-elf/var1.d: Don't xfail microblaze. - -2020-06-29 H.J. Lu - - * testsuite/ld-tic6x/shlib-1.rd: Move C6000_DSBT_BASE, - C6000_DSBT_SIZE and C6000_DSBT_INDEX dynamic tags to the last. - * testsuite/ld-tic6x/shlib-1b.rd: Likewise. - * testsuite/ld-tic6x/shlib-1r.rd: Likewise. - * testsuite/ld-tic6x/shlib-1rb.rd: Likewise. - * testsuite/ld-tic6x/shlib-app-1.rd: Likewise. - * testsuite/ld-tic6x/shlib-app-1b.rd: Likewise. - * testsuite/ld-tic6x/shlib-app-1r.rd: Likewise. - * testsuite/ld-tic6x/shlib-app-1rb.rd: Likewise. - * testsuite/ld-tic6x/shlib-noindex.rd: Likewise. - * testsuite/ld-tic6x/static-app-1.rd: Likewise. - * testsuite/ld-tic6x/static-app-1b.rd: Likewise. - * testsuite/ld-tic6x/static-app-1r.rd: Likewise. - * testsuite/ld-tic6x/static-app-1rb.rd: Likewise. - -2020-06-29 Alan Modra - - * testsuite/ld-x86-64/abs-k1om.d: Run only on x86_64-*-linux*. - * testsuite/ld-x86-64/protected2-k1om.d: Likewise. - * testsuite/ld-x86-64/protected3-k1om.d: Likewise. - -2020-06-26 Nick Alcock - - * configure.ac [--enable-libctf]: New, default yes. - Set ENABLE_LIBCTF accordingly. - * Makefile.am [!ENABLE_LIBCTF]: Empty LIBCTF. - * configure: Regenerate. - * config.in: Regenerate. - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * ldlang.c (ctf_output): Conditionalize on ENABLE_LIBCTF. - (ldlang_open_ctf): Likewise. - (lang_merge_ctf): Likewise. - (ldlang_ctf_apply_strsym): Likewise. - (lang_write_ctf): Likewise. - (ldlang_write_ctf_late): Likewise. - (ldlang_open_ctf) [!ENABLE_LIBCTF]: Warn about the presence of CTF - sections. - (lang_merge_ctf) [!ENABLE_LIBCTF]: New stub. - (ldlang_ctf_apply_strsym) [!ENABLE_LIBCTF]: Likewise. - (lang_write_ctf) [!ENABLE_LIBCTF]: Likewise. - (ldlang_write_ctf_late) [!ENABLE_LIBCTF]: Likewise. - * ldelfgen.c (ldelf_emit_ctf_early): Conditionalize on - ENABLE_LIBCTF. - (struct ctf_strsym_iter_cb_arg): Likewise. - (ldelf_ctf_strtab_iter_cb): Likewise. - (ldelf_ctf_symbols_iter_cb): Likewise. - (ldelf_examine_strtab_for_ctf): Likewise. - (ldelf_emit_ctf_early) [!ENABLE_LIBCTF]: New stub. - (ldelf_examine_strtab_for_ctf) [!ENABLE_LIBCTF]: New stub. - -2020-06-26 Jan Beulich - - * testsuite/ld-x86-64/x86-64.exp: Run K1OM tests. - -2020-06-26 Pat Bernardi - - * testsuite/ld-m68k/attr-gnu-4-0.s: New file. - * testsuite/ld-m68k/attr-gnu-4-1.s: Likewise. - * testsuite/ld-m68k/attr-gnu-4-2.s: Likewise. - * testsuite/ld-m68k/attr-gnu-4-00.d: Likewise. - * testsuite/ld-m68k/attr-gnu-4-01.d: Likewise. - * testsuite/ld-m68k/attr-gnu-4-02.d: Likewise. - * testsuite/ld-m68k/attr-gnu-4-10.d: Likewise. - * testsuite/ld-m68k/attr-gnu-4-11.d: Likewise. - * testsuite/ld-m68k/attr-gnu-4-12.d: Likewise. - * testsuite/ld-m68k/attr-gnu-4-20.d: Likewise. - * testsuite/ld-m68k/attr-gnu-4-21.d: Likewise. - * testsuite/ld-m68k/attr-gnu-4-22.d: Likewise. - * testsuite/ld-m68k/m68k.exp: Run the new tests. - -2020-06-24 H.J. Lu - - PR ld/26165 - * lexsup.c (ld_options): Correct --dependency-file order. - -2020-06-24 H.J. Lu - - PR ld/26083 - * testsuite/ld-csky/tls-ie-v1.d: Updated. - * testsuite/ld-csky/tls-ie.d: Likewise. - -2020-06-24 H.J. Lu - - PR ld/26083 - * testsuite/ld-cris/libdso-15b.d: Updated. - * testsuite/ld-cris/libdso-1c.d: Likewise. - * testsuite/ld-cris/libdso-1d.d: Likewise. - * testsuite/ld-cris/libdso-15c.d: New file. - -2020-06-24 H.J. Lu - - PR ld/26163 - * ldexp.c (exp_fold_tree_1): Set non_ir_ref_regular on the source - for assignment. - * testsuite/ld-plugin/lto.exp: Run ld/26163 test. - * testsuite/ld-plugin/pr26163a.c: New file. - * testsuite/ld-plugin/pr26163b.c: Likewise. - -2020-06-24 Alan Modra - - * lexsup.c (elf_shlib_list_options): Properly format help message. - (elf_plt_unwind_list_options): Likewise. - * emultempl/cskyelf.em (PARSE_AND_LIST_OPTIONS): Likewise. - -2020-06-23 Roland McGrath - - PR 22843 - * NEWS: Note --dependency-file. - * ld.texi (Options): Document --dependency-file. - * ldlex.h (enum option_values): Add OPTION_DEPENDENCY_FILE. - * ld.h (ld_config_type): New member dependency_file. - * lexsup.c (ld_options, parse_args): Parse --dependency-file. - * ldmain.c (struct dependency_file): New type. - (dependency_files, dependency_files_tail): New static variables. - (track_dependency_files): New function. - (write_dependency_file): New function. - (main): Call it when --dependency-file was passed. - * ldfile.c (ldfile_try_open_bfd): Call track_dependency_files. - (ldfile_open_command_file_1): Likewise. - * ldelf.c (ldelf_try_needed): Likewise. - * pe-dll.c (pe_implied_import_dll): Likewise. - -2020-06-23 Alan Modra - - PR 26150 - * ldlang.c (ldlang_add_file): Assert that we aren't adding the - current end of link.next list again too. - * ldmain.c (add_archive_element): Don't load archive elements - again that have already been loaded. - -2020-06-23 Alan Modra - - * testsuite/ld-elf/shared.exp (pr14170): Clear xfail for - bfin-*-linux*. - (pr17068, symbolic-func.so, pr22374): Likewise. - -2020-06-22 Nelson Chu - - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-01.d: Updated. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-02.d: Updated. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-03.d: Updated. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-04.d: Updated. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-05.d: Updated. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-06.d: Updated. - -2020-06-21 Alan Modra - - * ldfile.c: Replace uses of ENABLE_PLUGINS with BFD_SUPPORTS_PLUGINS. - * ldlang.c: Likewise. - * ldlang.h: Likewise. - * ldlex.h: Likewise. - * ldmain.c: Likewise. - * lexsup.c: Likewise. - * plugin.c: Wrap body of file in #if BFD_SUPPORTS_PLUGINS. - * testplug.c: Likewise. - * testplug2.c: Likewise. - * testplug3.c: Likewise. - * testplug4.c: Likewise. - * configure.ac (ENABLE_PLUGINS): Don't define AM_CONTITIONAL. - * Makefile.am: Remove ENABLE_PLUGINS conditionals. - (PLUGIN_CFLAGS): Don't define. - (PLUGIN_C, PLUGIN_H, PLUGIN_OBJECT): Likewise. Substitute all - uses with plugin file name. - * configure: Regenerate. - * Makefile.in: Regenerate. - -2020-06-20 Alan Modra - - * testsuite/lib/ld-lib.exp (default_ld_compile): Don't perror on - a compiler error. - (default_ld_assemble): Similarly for an assembler error. - (default_ld_nm): Similarly for an nm error. - (run_ld_link_tests): Report ld_assemble errors as a fail. - (check_as_cfi): Remove now unnecessary perror substitution. - * testsuite/ld-elf/exclude.exp: Report ld_nm error return as test - fails rather then unresolved. - * testsuite/ld-gc/gc.exp: Likewise. - * testsuite/ld-scripts/alignof.exp: Likewise. - * testsuite/ld-scripts/defined.exp: Likewise. - * testsuite/ld-scripts/script.exp: Likewise. - * testsuite/ld-scripts/sizeof.exp: Likewise. - * testsuite/ld-selective/selective.exp: Likewise. - * testsuite/ld-scripts/extern.exp: Likewise. Return on ld_link - failure. - * testsuite/ld-elfweak/elfweak.exp: Report compiler errors as - test unresolved. - * testsuite/ld-fastcall/fastcall.exp: Report assember errors as - test fails. - * testsuite/ld-i386/i386.exp (iamcu_tests): Likewise. - * testsuite/ld-ia64/line.exp: Likewise. - * testsuite/ld-mep/mep.exp: Likewise. - * testsuite/ld-mips-elf/mips-elf-flags.exp: Likewise. - * testsuite/ld-nios2/nios2.exp: Likewise. - * testsuite/ld-scripts/alignof.exp: Likewise. - * testsuite/ld-x86-64/line.exp: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-scripts/log2.exp: Formatting. - * testsuite/ld-tic6x/tic6x.exp: Report ld_link errors as a test fail. - -2020-06-20 Alan Modra - - * testsuite/ld-alpha/alpha.exp: Exclude *ecoff targets. - * testsuite/ld-elf/binutils.exp: Likewise. - * testsuite/ld-elf/tls.exp: Likewise. - * testsuite/ld-elf/tls_common.exp: Likewise. - * testsuite/ld-scripts/phdrs2.exp: Likewise. - -2020-06-20 Alan Modra - - * testsuite/ld-sh/sh.exp: Don't run relax tests for non-ELF. - Fail when ld_assemble fails. Use elseif to reduce indentation. - -2020-06-19 Alan Modra - - * testsuite/ld-elf/dynamic-1.rd: Accept st_other notations. - * testsuite/ld-elf/rdynamic-1.rd: Likewise. - * testsuite/ld-elf/pr9676.rd: Likewise. - * testsuite/ld-elf/pr9679.rd: Likewise. - * testsuite/ld-elfvers/vers30.dsym: Likewise. - * testsuite/ld-elfvers/vers31.dsym: Likewise. - * testsuite/ld-plugin/pr22983.1.d: Likewise. - * testsuite/ld-plugin/pr22983.2.d: Likewise. - * testsuite/ld-plugin/pr22983.3.d: Likewise. - * testsuite/ld-plugin/pr22983.4.d: Likewise. - * testsuite/ld-ifunc/ifunc.exp: Exclude alpha. - -2020-06-19 Alan Modra - - * emultempl/elf.em (gld${EMULATION_NAME}_handle_option): Omit - -z relro and -z norelro when target support for GNU_RELRO is lacking. - (gld${EMULATION_NAME}_before_parse): Ignore RELRO default too. - * emultempl/aarch64elf.em (gld${EMULATION_NAME}_before_parse): Ignore - RELRO default when target support for GNU_RELRO is lacking. - * emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): Likewise. - * emultempl/linux.em (gld${EMULATION_NAME}_before_parse): Likewise. - * emultempl/scoreelf.em (gld${EMULATION_NAME}_before_parse): Likewise. - * testsuite/config/default.exp (ld_elf_shared_opt): Don't set. - * testsuite/ld-elf/pr16322.d: xfail when no relro support. - * testsuite/ld-elf/pr22393-1a.d: Likewise. - * testsuite/ld-elf/pr22393-1b.d: Likewise. - * testsuite/ld-elf/shared.exp (pr20995-2.so, pr20995-2): Likewise. - * testsuite/lib/ld-lib.exp (run_ld_link_tests): Use check_relro_support - to decide whether to pass extra ld option "-z norelro". - -2020-06-17 H.J. Lu - - * testsuite/ld-elf/linux-x86.exp (check_pr25749a): Append "-w" - to cflags. - -2020-06-17 H.J. Lu - - * testsuite/ld-elf/linux-x86.exp: Require GCC 5 for Build - pr25749-1b (-pie -fPIE). - -2020-06-16 Alan Modra - - * testsuite/ld-elf/pr23428.c: Define _DEFAULT_SOURCE. - * testsuite/ld-elf/indirect1b.c: Replace asm with __asm__. - * testsuite/ld-elf/indirect2.c: Likewise. - * testsuite/ld-elf/indirect3b.c: Likewise. - * testsuite/ld-elf/indirect4b.c: Likewise. - * testsuite/ld-elf/pr14323-2.c: Likewise. - * testsuite/ld-elf/pr18720b.c: Likewise. - * testsuite/ld-elf/pr19553c.c: Likewise. - * testsuite/ld-elf/pr23428.c: Likewise. - * testsuite/ld-elfvers/vers27b.c: Likewise. - * testsuite/ld-elfvsb/common.c: Likewise. - * testsuite/ld-elfvsb/main.c: Likewise. - * testsuite/ld-elfvsb/sh1.c: Likewise. - * testsuite/ld-elfvsb/test.c: Likewise. - * testsuite/ld-pe/aligncomm-1.c: Likewise. - * testsuite/ld-pe/aligncomm-2.c: Likewise. - * testsuite/ld-pe/aligncomm-3.c: Likewise. - * testsuite/ld-pe/aligncomm-4.c: Likewise. - * testsuite/ld-plugin/pr23958.c: Likewise. - * testsuite/ld-size/size-1b.c: Likewise. - * testsuite/ld-size/size-2b.c: Likewise. - * testsuite/ld-size/size-3a.c: Likewise. - * testsuite/ld-size/size-3b.c: Likewise. - * testsuite/ld-size/size-3c.c: Likewise. - * testsuite/ld-size/size-4b.c: Likewise. - * testsuite/ld-size/size-5b.c: Likewise. - * testsuite/ld-size/size-6a.c: Likewise. - * testsuite/ld-size/size-7a.c: Likewise. - * testsuite/ld-size/size-8a.c: Likewise. - * testsuite/ld-size/size-9b.c: Likewise. - * testsuite/ld-size/size-10b.c: Likewise. - -2020-06-16 Alan Modra - - * emulparams/tic30aout.sh: Delete file. - * scripttempl/tic30aout.sc: Delete file. - * Makefile.am: Remove etic30aout.c from ALL_EMULATION_SOURCES and - delete dependency. - * configure.tgt: Delete tic30-*-*aout* entry. - * testsuite/ld-scripts/sane1.d: Delete tic30-*-aout mention. - * testsuite/ld-scripts/segment-start.d: Likewise. - * Makefile.in: Regenerate. - * po/BLD-POTFILES.in: Regenerate. - -2020-06-15 Max Filippov - - * emultempl/xtensaelf.em (XSHAL_ABI): Remove macro definition. - (XTHAL_ABI_UNDEFINED, XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New - macros. - (elf32xtensa_abi): New declaration. - (xt_config_info_unpack_and_check): Set elf32xtensa_abi if it is - undefined. Use xtensa_abi_choice instead of XSHAL_ABI to test - ABI tag consistency. - (xtensa_add_config_info): Use xtensa_abi_choice instead of - XSHAL_ABI to format ABI tag. - (PARSE_AND_LIST_PROLOGUE): Define OPTION_ABI_WINDOWED, - OPTION_ABI_CALL0 and declare elf32xtensa_abi. - (PARSE_AND_LIST_LONGOPTS): Add entries for --abi-windowed and - --abi-call0. - (PARSE_AND_LIST_OPTIONS): Add help text for --abi-windowed and - --abi-call0. - (PARSE_AND_LIST_ARGS_CASES): Add handlers for --abi-windowed and - --abi-call0. - * ld.texi: Add description for options --abi-windowed and - --abi-call0. - -2020-06-15 Roland McGrath - - * NEWS: Mention -z start-stop-visibility=... option for ELF. - * ld.texi (Options): Document -z start-stop-visibility=... option. - * ldmain.c (main): Initialize link_info.start_stop_visibility. - * emultempl/elf.em (gld${EMULATION_NAME}_handle_option): - Parse -z start-stop-visibility=... option. - -2020-06-15 Alan Modra - - * testsuite/ld-scripts/include.exp: Don't load ld-lib.exp. - * testsuite/ld-scripts/phdrs3.exp: Likewise. - * testsuite/ld-scripts/rgn-at.exp: Likewise. - * testsuite/ld-scripts/rgn-over.exp: Likewise. - * testsuite/ld-scripts/sort.exp: Likewise. - * testsuite/ld-discard/discard.exp: Likewise. Use is_elf_format. - -2020-06-15 Alan Modra - - PR 26103 - * testsuite/ld-linkonce/ref1.s, - * testsuite/ld-linkonce/ref2.s, - * testsuite/ld-linkonce/sym1.s, - * testsuite/ld-linkonce/sym2.s, - * testsuite/ld-linkonce/sym3.s: New test files. - * testsuite/ld-linkonce/linkonce.exp: Run tests for PE too. - Add pr26103 test. Remove unnecessary load_lib. - -2020-06-15 Alan Modra - - * testsuite/ld-linkonce/zeroeh_x.s: Rename from x.s. - * testsuite/ld-linkonce/zeroeh_y.s: Rename from y.s. - * testsuite/ld-linkonce/zeroehl32.d: Adjust for renaming. Support - big-endian output. Run for powerpc. - -2020-06-11 Alan Modra - - * testsuite/ld-plugin/lto.exp (lto_link_tests): Move lto-6, - pr12760, pr23818 and pr23958 tests to.. - (lto_link_elf_tests): ..here. - -2020-06-11 Nick Clifton - - * testsuite/ld-elf/pr26094-1b.c (main): Change return type to - int. - -2020-06-10 Alan Modra - - * testsuite/ld-elf/linux-x86.exp: Build tests when non-native. - (check_pr25749b): Add optional args. Set expected pass file - from args. Run -1b and -2a tests with passall.out. - * testsuite/ld-elf/passall.out: New file. - * testsuite/ld-elf/pr25749-1.c: Adjust to pass with older glibc. - * testsuite/ld-elf/pr25749-2.c: Likewise. - * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Use - regexp_diff to compare expected output from running binary. - -2020-06-10 H.J. Lu - - PR ld/26094 - * testsuite/ld-elf/pr26094-1.ver: New fike. - * testsuite/ld-elf/pr26094-1a.c: Likewise. - * testsuite/ld-elf/pr26094-1a.rd: Likewise. - * testsuite/ld-elf/pr26094-1b.c: Likewise. - * testsuite/ld-elf/pr26094-1b.rd: Likewise. - * testsuite/ld-elf/pr26094-1c.c: Likewise. - * testsuite/ld-elf/shared.exp: Run ld/26094 tests. - -2020-06-09 H.J. Lu - - PR ld/18801 - * testsuite/ld-i386/i386.exp: Run ifunc-textrel-1a, - ifunc-textrel-1b, ifunc-textrel-2a and ifunc-textrel-2b. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/ifunc-textrel-1a.d: Likewise. - * testsuite/ld-i386/ifunc-textrel-1b.d: Likewise. - * testsuite/ld-i386/ifunc-textrel-2a.d: Likewise. - * testsuite/ld-i386/ifunc-textrel-2b.d: Likewise. - * testsuite/ld-x86-64/ifunc-textrel-1.s: Likewise. - * testsuite/ld-x86-64/ifunc-textrel-1a.d: Likewise. - * testsuite/ld-x86-64/ifunc-textrel-1b.d: Likewise. - * testsuite/ld-x86-64/ifunc-textrel-2.s: Likewise. - * testsuite/ld-x86-64/ifunc-textrel-2a.d: Likewise. - * testsuite/ld-x86-64/ifunc-textrel-2b.d: Likewise. - * testsuite/ld-i386/pr18801a.d: Expect warning for IFUNC - resolvers. - * testsuite/ld-i386/pr18801b.d: Likewise. - * estsuite/ld-x86-64/pr18801a.d: Likewise. - * estsuite/ld-x86-64/pr18801b.d: Likewise. - -2020-06-09 Alan Modra - - PR 26065 - * testsuite/ld-elf/shared.exp: Compile dl4main.c -fPIC. - (dl4e, dl4f): Expect dl4a.out. - * testsuite/ld-elf/dl4e.out: Delete. - -2020-06-07 H.J. Lu - - * testsuite/ld-elf/shared.exp: Pass $LFLAGS to PR ld/21703 - shared test. - -2020-06-07 H.J. Lu - - * testsuite/ld-elf/shared.exp: Xfail pr20995/pr20995-2 for - tic6x-*-*. - -2020-06-07 H.J. Lu - - * testsuite/ld-elf/pr11304.d: Skip tic6x-*-elf. - -2020-06-06 Alan Modra - - * testsuite/ld-elf/comm-data.exp: Don't xfail arm or bfin-linux. - -2020-06-06 Alan Modra - - * lexsup.c (ld_options): Accept -plugin and -plugin-opt when - !ENABLE_PLUGINS. - * testsuite/lib/ld-lib.exp (check_plugin_api_available): Adjust. - -2020-06-05 Nelson Chu - - * testsuite/ld-riscv-elf/attr-merge-priv-spec.d: Rename to - attr-merge-priv-spec-01.d. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-c.s: Set spec to 1.11. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-d.s: Empty priv spec set. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-02.d: New testcase. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-03.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-02.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-03.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-04.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-05.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-06.d: Likewise. - * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Updated. - -2020-06-05 Nelson Chu - - * testsuite/ld-riscv-elf/attr-merge-arch-01.d: The CSR isn't used, - so ignore the -mpriv-spec setting. - * testsuite/ld-riscv-elf/attr-merge-arch-02.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-arch-03.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-stack-align.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-01.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-02.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-03.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-04.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-05.d: Likewise. - * testsuite/ld-riscv-elf/call-relax.d: Add -mno-arch-attr. - -2020-06-04 H.J. Lu - - PR ld/26080 - * testsuite/ld-elf/comm-data.exp: Remove copy_reloc. - * testsuite/ld-elf/comm-data2r.rd: Removed. - * testsuite/ld-elf/comm-data2r.sd: Likewise. - * testsuite/ld-elf/comm-data2r.xd: Likewise. - -2020-06-04 Alan Modra - - * testsuite/config/default.exp: Remove global directive outside - proc body. - * testsuite/ld-bootstrap/bootstrap.exp: Likewise. - * testsuite/ld-elf/compress.exp: Likewise. - * testsuite/ld-elf/elf.exp: Likewise. - * testsuite/ld-elf/exclude.exp: Likewise. - * testsuite/ld-elf/frame.exp: Likewise. - * testsuite/ld-elf/indirect.exp: Likewise. - * testsuite/ld-elf/linux-x86.exp: Likewise. - * testsuite/ld-elf/shared.exp: Likewise. - * testsuite/ld-elf/tls.exp: Likewise. - * testsuite/ld-elf/tls_common.exp: Likewise. - * testsuite/ld-elfcomm/elfcomm.exp: Likewise. - * testsuite/ld-elfweak/elfweak.exp: Likewise. - * testsuite/ld-frv/fdpic.exp: Likewise. - * testsuite/ld-frv/tls.exp: Likewise. - * testsuite/ld-gc/gc.exp: Likewise. - * testsuite/ld-i386/i386.exp: Likewise. - * testsuite/ld-i386/no-plt.exp: Likewise. - * testsuite/ld-ifunc/ifunc.exp: Likewise. - * testsuite/ld-mips-elf/mips-elf-flags.exp: Likewise. - * testsuite/ld-nios2/nios2.exp: Likewise. - * testsuite/ld-plugin/lto.exp: Likewise. - * testsuite/ld-plugin/plugin.exp: Likewise. - * testsuite/ld-powerpc/export-class.exp: Likewise. - * testsuite/ld-scripts/align.exp: Likewise. - * testsuite/ld-scripts/crossref.exp: Likewise. - * testsuite/ld-scripts/defined.exp: Likewise. - * testsuite/ld-scripts/overlay-size.exp: Likewise. - * testsuite/ld-scripts/provide.exp: Likewise. - * testsuite/ld-scripts/weak.exp: Likewise. - * testsuite/ld-selective/selective.exp: Likewise. - * testsuite/ld-sh/rd-sh.exp: Likewise. - * testsuite/ld-size/size.exp: Likewise. - * testsuite/ld-srec/srec.exp: Likewise. - * testsuite/ld-x86-64/mpx.exp: Likewise. - * testsuite/ld-x86-64/no-plt.exp: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - -2020-06-04 Alan Modra - - * testsuite/ld-dynamic/export-dynamic-symbol-2.d: Match output for - mips-sgi-irix6. - * testsuite/ld-dynamic/export-dynamic-symbol-glob.d: Likewise. - * testsuite/ld-dynamic/export-dynamic-symbol-list-2.d: Likewise. - * testsuite/ld-dynamic/export-dynamic-symbol-list-glob.d: Likewise. - * testsuite/ld-dynamic/export-dynamic-symbol.exp: Exclude targets - with poor PIE support. - -2020-06-04 Alan Modra - - * testsuite/ld-plugin/lto.exp (pr12758.exe): Add NOPIE_LDFLAGS. - * testsuite/ld-unique/unique.exp: Add NOPIE_LDFLAGS to unique - executable and dynamic executable tests. - -2020-06-03 H.J. Lu - - * testsuite/config/default.exp (NOSANTIZE_CFLAGS): New. - * testsuite/ld-elf/linux-x86.exp: Add $NOSANTIZE_CFLAGS to - tests with run_ld_link_exec_tests. - * testsuite/ld-elf/shared.exp: Add $NOSANTIZE_CFLAGS to tests - with run_ld_link_tests. - * testsuite/ld-elf/tls.exp: Likewise. - * testsuite/ld-elfweak/elfweak.exp: Add $NOSANTIZE_CFLAGS to - tests with ld_link. - * testsuite/ld-gc/gc.exp: Add $NOSANTIZE_CFLAGS to cflags. - * testsuite/ld-plugin/lto.exp: Add $NOSANTIZE_CFLAGS to tests - with run_ld_link_tests.a - * testsuite/ld-plugin/plugin.exp: Append $NOSANTIZE_CFLAGS to - CFLAGS. - * testsuite/ld-selective/selective.exp: Add $NOSANTIZE_CFLAGS - to cflags and cxxflags. - * testsuite/ld-srec/srec.exp: Append $NOSANTIZE_CFLAGS to CC - and CXX. - * testsuite/ld-x86-64/plt-main-ibt-x32.dd: Updated for - -fsanitize=undefined. - * testsuite/ld-x86-64/plt-main-ibt.dd: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Add $NOSANTIZE_CFLAGS to - tests with run_cc_link_tests and run_ld_link_tests. - -2020-06-03 Fangrui Song - H.J. Lu - - PR ld/25910 - * NEWS: Mention --export-dynamic-symbol[-list]. - * ld.texi: Document --export-dynamic-symbol[-list]. - * ldgram.y: Pass current_dynamic_list_p to - lang_append_dynamic_list. - * ldlang.c (current_dynamic_list_p): New. - (ang_append_dynamic_list): Updated to take a pointer to - struct bfd_elf_dynamic_list * argument instead of using - link_info.dynamic_list. - (lang_append_dynamic_list_cpp_typeinfo): Pass - &link_info.dynamic_list to ang_append_dynamic_list. - (lang_append_dynamic_list_cpp_new): Likewise. - * ldlang.h (current_dynamic_list_p): New. - (lang_append_dynamic_list): Add a pointer to - struct bfd_elf_dynamic_list * argument. - * ldlex.h (option_values): Add OPTION_EXPORT_DYNAMIC_SYMBOL and - OPTION_EXPORT_DYNAMIC_SYMBOL_LIST. - * lexsup.c (ld_options): Add entries for - OPTION_EXPORT_DYNAMIC_SYMBOL and - OPTION_EXPORT_DYNAMIC_SYMBOL_LIST. - (parse_args): Handle --export-dynamic-symbol and - --export-dynamic-symbol-list. - * testsuite/ld-dynamic/export-dynamic-symbol-1.d: New. - * testsuite/ld-dynamic/export-dynamic-symbol-2.d: New. - * testsuite/ld-dynamic/export-dynamic-symbol-glob.d: New. - * testsuite/ld-dynamic/export-dynamic-symbol-list-1.d: New. - * testsuite/ld-dynamic/export-dynamic-symbol-list-2.d: New. - * testsuite/ld-dynamic/export-dynamic-symbol-list-glob.d: New. - * testsuite/ld-dynamic/export-dynamic-symbol.exp: New. - * testsuite/ld-dynamic/export-dynamic-symbol.s: New. - * testsuite/ld-dynamic/foo-bar.list: New. - * testsuite/ld-dynamic/foo.list: New. - * testsuite/ld-dynamic/foo.s: New. - * testsuite/ld-dynamic/fstar.list: New. - * testsuite/ld-elf/dlempty.list: New. - * testsuite/ld-elf/shared.exp: Add tests for - --export-dynamic-symbol and --export-dynamic-symbol-list. - -2020-06-03 Jan Beulich - - * testsuite/ld-elf/linux-x86.exp: Make copied source files - writeable. - -2020-05-28 Nick Clifton - - PR 26047 - * ldelf.c (ldelf_after_open): Fail if attempting to link one - executable into another. Ensure that the test is made for all - forms of linking. - -2020-05-28 H.J. Lu - - * NEWS: Mention --enable-textrel-check=yes is default for - Linux/x86 targets. - * configure.tgt (ac_default_ld_textrel_check): Set to yes if - unset for Linux/x86 targets. - -2020-05-28 H.J. Lu - - PR ld/20824 - * NEWS: Mention --enable-textrel-check=[no|yes|warning|error]. - * configure.ac: Add --enable-textrel-check=[no|yes|warning|error]. - (DEFAULT_LD_TEXTREL_CHECK): New AC_DEFINE_UNQUOTED. - (DEFAULT_LD_TEXTREL_CHECK_WARNING): Likewise. - * ldmain.c (main): Initialize link_info.textrel_check to - DEFAULT_LD_TEXTREL_CHECK. - * lexsup.c (ld_options): Check DEFAULT_LD_TEXTREL_CHECK_WARNING. - * config.in: Regenerated. - * configure: Likewise. - -2020-05-28 Nick Clifton - - * lexsup.c (parse_args): Generate an error if a name is not - provided to the -Map option. - (ld_options): Mention that the -Map option supports a directory - name as an argument. - * NEWS: Remove mention of support for an empty string as an - argument to -Map. - * ld.texi: Likewise. - -2020-05-27 Hans-Peter Nilsson - - PR ld/22909 - * testsuite/ld-elf/pr19539.d: Don't xfail for cris*-*-*. - -2020-05-27 Rasmus Villemoes - Nick Clifton - - * lexsup.c (parse_args): If the map filename is defined but empty - create a name based upon the output file name. If the name is - defined but refers to a directory create a file inside the - directory based on the output file name. - * ld.texi: Document the new feature. - * testsuite/ld-script/map-address.exp: Add test of new feature. - * NEWS: Mention the new feature. - -2020-05-27 H.J. Lu - - PR ld/22909 - * NEWS: Mention --warn-textrel. - * ld.texi: Update -z text/notext/textoff. Add --warn-textrel. - Remove --warn-shared-textrel. - * ldlex.h (option_values): Rename OPTION_WARN_SHARED_TEXTREL to - OPTION_WARN_TEXTREL. - * lexsup.c (ld_options): Add --warn-textrel. Obsolete - --warn-shared-textrel. - (parse_args): Updated. - (elf_shlib_list_options): Check link_info.textrel_check. - * emultempl/elf.em: Updated. - * testsuite/ld-elf/pr19539.d: Replace -z notext with - --warn-textrel. Expect a warning. - * testsuite/ld-i386/warn1.d: Update expected warning. - -2020-05-26 H.J. Lu - - * testsuite/ld-ifunc/ifunc-23a-x86.d: Skip *-*-lynxos *-*-nto*. - * testsuite/ld-ifunc/ifunc-24a-x86.d: Likewise. - * testsuite/ld-ifunc/ifunc-25a-x86.d: Likewise. - -2020-05-25 H.J. Lu - - * testsuite/ld-x86-64/x86-64.exp: Pass -z notext to linker. - -2020-05-25 H.J. Lu - - * testsuite/ld-elf/eh6.d: Pass -z notext to linker. - * testsuite/ld-elf/ehdr_start-shared.d: Likewise. - * testsuite/ld-elf/pr19539.d: Likewise. - * testsuite/ld-elfvers/vers.exp: Likewise. - * testsuite/ld-elfvsb/elfvsb.exp: Likewise. - * testsuite/ld-i386/i386.exp: Likewise. - * testsuite/ld-i386/nogot1.d: Likewise. - * testsuite/ld-i386/pr19539.d: Likewise. - * testsuite/ld-i386/pr19636-2a.d: Likewise. - * testsuite/ld-i386/pr19636-2b.d: Likewise. - * testsuite/ld-i386/pr19636-2c.d: Likewise. - * testsuite/ld-i386/pr19636-2d.d: Likewise. - * testsuite/ld-i386/pr19636-2e.d: Likewise. - * testsuite/ld-i386/pr19636-3d.d: Likewise. - * testsuite/ld-i386/pr19636-3e.d: Likewise. - * testsuite/ld-i386/pr19939b.d: Likewise. - * testsuite/ld-i386/undefweaka.d: Likewise. - * testsuite/ld-i386/undefweakb.d: Likewise. - * testsuite/ld-shared/shared.exp: Likewise. - * testsuite/ld-size/size.exp: Likewise. - * testsuite/ld-unique/unique.exp: Likewise. - * testsuite/ld-x86-64/pie1.d: Likewise. - * testsuite/ld-x86-64/pr19539a.d: Likewise. - * testsuite/ld-x86-64/pr19539b.d: Likewise. - * testsuite/ld-x86-64/pr19636-1d.d: Likewise. - * testsuite/ld-x86-64/pr19636-1e.d: Likewise. - * testsuite/ld-x86-64/pr19807-1a.d: Likewise. - * testsuite/ld-x86-64/pr19807-1b.d: Likewise. - * testsuite/ld-x86-64/pr19807-2b.d: Likewise. - * testsuite/ld-x86-64/pr19807-2c.d: Likewise. - * testsuite/ld-x86-64/pr19807-2d.d: Likewise. - * testsuite/ld-x86-64/pr19807-2e.d: Likewise. - * testsuite/ld-x86-64/pr19939b.d: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - -2020-05-24 Fangrui Song - - PR ld/26018 - * lexsup.c (parse_args): Simplify. - * testsuite/ld-elf/dl4e.out: New. - * testsuite/ld-elf/shared.exp: Updated for PR ld/26018 tests. - -2020-05-23 H.J. Lu - - PR ld/26018 - * testsuite/ld-i386/i386.exp: Add a -Bsymbolic-functions test. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr26018.d: New file. - * testsuite/ld-x86-64/pr26018.d: Likewise. - * testsuite/ld-x86-64/pr26018.s: Likewise. - -2020-05-21 Alan Modra - - * deffilep.y: Replace "if (x) free (x)" with "free (x)" thoughout. - * emultempl/elf.em: Likewise. - * emultempl/msp430.em: Likewise. - * emultempl/pe.em: Likewise. - * emultempl/pep.em: Likewise. - * emultempl/ppc64elf.em: Likewise. - * emultempl/xtensaelf.em: Likewise. - * ldelf.c: Likewise. - * ldfile.c: Likewise. - * ldmain.c: Likewise. - * ldmisc.c: Likewise. - * lexsup.c: Likewise. - * pe-dll.c: Likewise. - -2020-05-20 Nelson Chu - - * testsuite/ld-riscv-elf/attr-merge-arch-01.d: Updated - priv attributes according to the -mpriv-spec option. - * testsuite/ld-riscv-elf/attr-merge-arch-02.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-arch-03.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-a.s: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec-b.s: Likewise. - * testsuite/ld-riscv-elf/attr-merge-priv-spec.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-stack-align.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-01.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-02.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-03.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-04.d: Likewise. - * testsuite/ld-riscv-elf/attr-merge-strict-align-05.d: Likewise. - -2020-05-20 Alan Modra - - PR 25993 - * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Don't copy - other_bfd_filename for bfd_set_filename, and test result of - bfd_set_filename call. Don't create a new is->filename, simply - copy from bfd filename. Free new_name after bfd_set_filename. - * emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise. - -2020-05-19 Siddhesh Poyarekar - - * testsuite/ld-aarch64/aarch64-elf.exp: New test - emit-relocs-560. - * testsuite/ld-aarch64/emit-relocs-560.d: New file. - * testsuite/ld-aarch64/emit-relocs-560.s: New file. - -2020-05-19 Alan Modra - - * emultempl/beos.em (sort_by_file_name): Use bfd_get_filename - rather than accessing bfd->filename directly. - * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise. - * emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise. - * emultempl/spuelf.em (embedded_spu_file): Likewise. - * ldlang.c (input_statement_is_archive_path, wild_sort), - (check_excluded_libs): Likewise. - * ldmain.c (add_archive_element): Likewise. - * ldmisc.c (vfinfo): Likewise. - * pe-dll.c (auto_export, generate_edata, pe_create_import_fixup), - (pe_dll_generate_implib, pe_process_import_defs): Likewise. - * plugin.c (plugin_object_p): Likewise. - -2020-05-18 Douglas B Rupp - - * ldemul.h (ldemul_print_symbol): New. - (ld_emulation_xfer_type) - - * ldmain.c (add_archive_element): Fix s/claimi/claim/ typo - in info message. - -2020-05-18 Nick Clifton - - * po/sv.po: Update Swedish translation. - -2020-05-18 Nick Clifton - - PR 25993 - * emultempl/pe.em (_after_open): Check for duplicate filename - pointers before renaming the dll. - * emultempl/pep.em (_after_open): Likewise. - -2020-05-13 Nick Clifton - - PR 25979 - * lexsup.c (elf_shlib_list_options): Include the default value for - the hash style in the output text. - -2020-05-11 Alan Modra - - * testsuite/ld-powerpc/pcrelopt.s: Add lxvp and stxvp. - * testsuite/ld-powerpc/pcrelopt.d: Update. - -2020-05-11 Alan Modra - - * testsuite/ld-powerpc/callstub-1.d: Use -mpower10/-Mpower10 in - place of -mfuture/-Mfuture. - * testsuite/ld-powerpc/notoc2.d: Likewise. - * testsuite/ld-powerpc/powerpc.exp: Likewise. - * testsuite/ld-powerpc/tlsgd.d: Likewise. - * testsuite/ld-powerpc/tlsie.d: Likewise. - * testsuite/ld-powerpc/tlsld.d: Likewise. - -2020-05-11 Nick Clifton - - * po/es.po: Updated Spanish translation. - -2020-05-01 Wilco Dijkstra - - PR ld/25665 - * testsuite/ld-aarch64/farcall-group.s: New large group test. - * testsuite/ld-aarch64/farcall-group.d: New test driver. - * testsuite/ld-aarch64/aarch64-elf.exp: Run the new test. - -2020-05-01 Alan Modra - - PR 25882 - * ldlang.c (lang_check): Call bfd_merge_private_bfd_data for - shared libraries. - -2020-05-01 Alan Modra - - * po/BLD-POTFILES.in: Regenerate. - -2020-04-30 Alex Coplan - - * testsuite/ld-aarch64/erratum843419_tls_ie.d: Use udf in disassembly. - * testsuite/ld-aarch64/farcall-b-section.d: Likewise. - * testsuite/ld-aarch64/farcall-back.d: Likewise. - * testsuite/ld-aarch64/farcall-bl-section.d: Likewise. - -2020-04-30 Nick Clifton - - * testsuite/ld-elf/compress1c.d: XFAIL if thet target linker does - not support the -shared command line option. - * /ld-elf/compressed1c.d: Likewise. - * /ld-elf/compressed1e.d: Likewise. - * /ld-elf/dynamic1.d: Likewise. - * /ld-elf/dynsym1.d: Likewise. - * /ld-elf/ehdr_start-shared.d: Likewise. - * /ld-elf/exclude3b.d: Likewise. - * /ld-elf/global1.d: Likewise. - * /ld-elf/hash.d: Likewise. - * /ld-elf/local1.d: Likewise. - * /ld-elf/mbind1b.d: Likewise. - * /ld-elf/now-1.d: Likewise. - * /ld-elf/now-2.d: Likewise. - * /ld-elf/now-3.d: Likewise. - * /ld-elf/now-4.d: Likewise. - * /ld-elf/pr12975.d: Likewise. - * /ld-elf/pr13177.d: Likewise. - * /ld-elf/pr13195.d: Likewise. - * /ld-elf/pr16322.d: Likewise. - * /ld-elf/pr16498a.d: Likewise. - * /ld-elf/pr16498b.d: Likewise. - * /ld-elf/pr17615.d: Likewise. - * /ld-elf/pr19162.d: Likewise. - * /ld-elf/pr19698.d: Likewise. - * /ld-elf/pr20513c.d: Likewise. - * /ld-elf/pr20513d.d: Likewise. - * /ld-elf/pr21389a.d: Likewise. - * /ld-elf/pr21389b.d: Likewise. - * /ld-elf/pr21389c.d: Likewise. - * /ld-elf/pr21562a.d: Likewise. - * /ld-elf/pr21562b.d: Likewise. - * /ld-elf/pr21562c.d: Likewise. - * /ld-elf/pr21562d.d: Likewise. - * /ld-elf/pr21562e.d: Likewise. - * /ld-elf/pr21562f.d: Likewise. - * /ld-elf/pr21562g.d: Likewise. - * /ld-elf/pr21562h.d: Likewise. - * /ld-elf/pr21562i.d: Likewise. - * /ld-elf/pr21562j.d: Likewise. - * /ld-elf/pr21562k.d: Likewise. - * /ld-elf/pr21562l.d: Likewise. - * /ld-elf/pr21562m.d: Likewise. - * /ld-elf/pr21562n.d: Likewise. - * /ld-elf/pr21903a.d: Likewise. - * /ld-elf/pr21903b.d: Likewise. - * /ld-elf/pr22269b.d: Likewise. - * /ld-elf/pr22393-1a.d: Likewise. - * /ld-elf/pr22393-1b.d: Likewise. - * /ld-elf/pr23658-1c.d: Likewise. - * /ld-elf/pr25708.d: Likewise. - * /ld-elf/rpath-1.d: Likewise. - * /ld-elf/rpath-2.d: Likewise. - * /ld-elf/runpath-1.d: Likewise. - * /ld-elf/runpath-2.d: Likewise. - * /ld-elf/sizeofb.d: Likewise. - * /ld-elf/startofb.d: Likewise. - * /ld-elf/strtab.d: Likewise. - * /ld-elf/textaddr2.d: Likewise. - * /ld-elf/textaddr5.d: Likewise. - * /ld-elf/textaddr6.d: Likewise. - * /ld-elf/unknown2.d: Likewise. - * /ld-undefined/entry-3.d: Likewise. - * /ld-undefined/entry-4.d: Likewise. - * /ld-elf/mbind1c.d: XFAIL if the target linker does not support - the -pie option. - * /ld-elf/pie.d: Likewise. - * /ld-elf/pr19539.d: Likewise. - * /ld-elf/pr21903d.d: Likewise. - * /ld-elf/pr22269a.d: Likewise. - * /ld-elf/pr22393-1c.d: Likewise. - * /ld-elf/pr22393-1d.d: Likewise. - * /ld-elf/pr22423.d: Likewise. - * /ld-elf/loadaddr1.d: Expect to fail on the rx-linux target. - * /ld-elf/loadaddr2.d: Likewise. - * /ld-elf/pr22393-1e.d: Likewise. - * /ld-elf/pr22393-1f.d: Likewise. - * /ld-elf/textaddr1.d: Likewise. - * /ld-elf/textaddr4.d: Likewise. - -2020-04-30 Yoshinori Sato - - * emulparams/elf32rx_linux.sh: New rx-linux emulation. - * emultempl/rxlinux.em: New. - * configure.tgt: Add rx-linux. - * Makefile.am: Add eelf32rx_linux.c - * Makefile.in: Regenerate. - -2020-04-29 Max Filippov - - * testsuite/ld-xtensa/relax-diff1.d: New test definition. - * testsuite/ld-xtensa/relax-diff1.s: New test source. - * testsuite/ld-xtensa/relax-ndiff.d: New test definition. - * testsuite/ld-xtensa/relax-ndiff.s: New test source. - * testsuite/ld-xtensa/xtensa.exp: (relax-diff1) - (relax-ndiff): New tests. - -2020-04-29 Stephen Casner - - PR 25829 - * testsuite/ld-scripts/default-script.exp: Add --image-base=0 to - LDFLAGS for targets *-*-mingw64 x86_64-*-cygwin. - * testsuite/ld-scripts/default-script1.d: No longer have to skip - test for those targets. - * testsuite/ld-scripts/default-script2.d: Likewise. - * testsuite/ld-scripts/default-script3.d: Likewise. - * testsuite/ld-scripts/default-script4.d: Likewise. - -2020-04-27 Tamar Christina - - * pe-dll.c (pe_detail_list): Add pe-bigobj-i386. - -2020-04-22 Max Filippov - - PR ld/25861 - * testsuite/ld-xtensa/relax-loc.d: New test definition. - * testsuite/ld-xtensa/relax-loc.s: New test source. - * testsuite/ld-xtensa/xtensa.exp (relax-loc): New test. - -2020-04-22 Fangrui Song - - PR ld/25806 - * ldlang.h (struct lang_input_statement_struct): Add extra_search_path. - * ldlang.c (current_input_file): New. - (ldirname): New. - (new_afile): Add from_filename parameter. Set extra_search_path. - (lang_add_input_file): Pass current_input_file to new_afile. - (load_symbols): Set current_input_file. - * ldfile.c (ldfile_open_file): If extra_search_path has been set - then scan it for the file that needs to be opened. - * ld.texi: Document the new behaviour. - * NEWS: Mention the new feature. - -2020-04-22 Alan Modra - - * testsuite/ld-scripts/default-script1.d: Correct mingw skip. - * testsuite/ld-scripts/default-script2.d: Likewise. - * testsuite/ld-scripts/default-script3.d: Likewise. - * testsuite/ld-scripts/default-script4.d: Likewise. - -2020-04-21 Stephen Casner - - PR 25829 - * testsuite/ld-scripts/script.exp (check_script) - (extract_symbol_test): Make test addresses fit in 16 bits. - * testsuite/ld-scripts/memory.t: Likewise. - * testsuite/ld-scripts/memory_sym.t (TXT_LENGTH): Likewise. - * testsuite/ld-scripts/default-script.t (_START): Likewise. - * testsuite/ld-scripts/default-script1.d: Likewise. - * testsuite/ld-scripts/default-script2.d: Likewise. - * testsuite/ld-scripts/default-script3.d: Likewise. - * testsuite/ld-scripts/default-script4.d: Likewise. - * testsuite/ld-scripts/empty-address-1.t: Likewise. - * testsuite/ld-scripts/empty-address-1.d: Likewise. - * testsuite/ld-scripts/empty-address-2a.d: Likewise. - * testsuite/ld-scripts/empty-address-2b.d: Likewise. - * testsuite/ld-misc/start.s: .long -> .dc.a to allow relocation to - fit target address size. - * testsuite/ld-scripts/empty-address-1.s: Likewise. - * testsuite/ld-scripts/empty-address-2.s: Likewise. - -2020-04-21 H.J. Lu - - PR ld/25849 - * ldelfgen.c (ldelf_map_segments): Call - elf_backend_strip_zero_sized_dynamic_sections. - * testsuite/ld-alpha/tlsbinr.rd: Updated. - -2020-04-20 Alan Modra - - * testsuite/ld-powerpc/tlsopt5.s: Rename foo to aaaaa. - * testsuite/ld-powerpc/tlsopt5.d: Adjust to suit. - * testsuite/ld-powerpc/tlsopt6.d: Likewise. - -2020-04-18 Rainer Orth - - * testsuite/ld-elf/warn1.d: Don't xfail on 64-bit Solaris/SPARC. - * testsuite/ld-elf/warn2.d: Likewise. - -2020-04-18 H.J. Lu - - * testsuite/ld-elf/elf.exp (ASFLAGS): Add "--defsym NO_SET=1" for - alpha target. - * testsuite/ld-elf/pr19789.s: Use "=" if NO_SET is defined. - -2020-04-16 Stephen Casner - - PR 18963 - * testsuite/ld-scripts/pr18963.t: Reduce section sizes to fit in - 16-bit address space. - * testsuite/ld-scripts/pr18963.d: Likewise. - -2020-04-17 Juan Manuel Guerrero - Jan W. Jagersma - - * scripttempl/i386go32.sc: Provide symbol _environ. Link in - .ctors and .dtors. Discard LTO sections. - -2020-04-17 Nick Clifton - - * testsuite/config/default.exp: If not already set then create the - CCC_OVERRIDE_OPTIONS environment variable to help when running the - testsuite with clang. - * testsuite/ld-elf/pr22269-1.c: Add a missing return statement. - * testsuite/ld-elfvers/vers.exp: Add checks to detect if files - were built before attempting to copy them. - -2020-04-15 Fangrui Song - - PR binutils/24613 - * lexsup.c (parse_args): Change RM_GENERATE_WARNING and - RM_GENERATE_ERROR to RM_DIAGNOSE. - * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Change - RM_GENERATE_ERROR to RM_DIAGNOSE. - * emultempl/elf.em (ld_${EMULATION_NAME}_emulation): Likewise. - -2020-04-14 Stephen Casner - - PR ld/25677 - * emulparams/pdp11.sh (SCRIPT_NAME): Change to pdp11. - (EXTRA_EM_FILE): New, add emulation file pdp11. - * scripttempl/pdp11.sc: New, derived from aout.sc without - irrelevant input sections. - * emultempl/pdp11.em (_add_options, _handle_option) - (_list_options): New. Add options -z, --imagic for pdp11-aout. - (_before_parse): Make --omagic be default instead of --nmagic. - (_get_script): Modify special-case linker script for --imagic. - * lexsup.c (parse_args): Explictly set config.text_read_only for -n. - * ld.texi (Options): Add documentation of PDP11-specific options. - (Options): Fix unrelated typo to --no-compact-branches. - * gen-doc.texi: @set PDP11. - * testsuite/ld-pdp11/pdp11.exp: New, start pdp11 testing. - * testsuite/ld-pdp11/sections.s: New, source for options tests. - * testsuite/ld-pdp11/imagic.d: New, test --imagic format. - * testsuite/ld-pdp11/imagicz.d: New, test -z (imagic) format. - * testsuite/ld-pdp11/nmagic.d: New, test --nmagic format. - * testsuite/ld-pdp11/omagic.d: New, test --omagic format. - -2020-04-14 H.J. Lu - - PR binutils/25707 - * testsuite/ld-arm/armthumb-lib.sym: Updated. - * testsuite/ld-arm/farcall-mixed-app.sym: Likewise. - * testsuite/ld-arm/farcall-mixed-app2.sym: Likewise. - * testsuite/ld-arm/fdpic-main-m.sym: Likewise. - * testsuite/ld-arm/fdpic-main.sym: Likewise. - * testsuite/ld-arm/fdpic-shared-m.sym: Likewise. - * testsuite/ld-arm/fdpic-shared.sym: Likewise. - * testsuite/ld-arm/mixed-app.sym: Likewise. - * testsuite/ld-arm/mixed-lib.sym: Likewise. - * testsuite/ld-arm/preempt-app.sym: Likewise. - * testsuite/ld-elf/hash.d: Likewise. - * testsuite/ld-elf/pr13195.d: Likewise. - * testsuite/ld-elfvsb/hidden2.d: Likewise. - * testsuite/ld-mips-elf/hash2.d: Likewise. - -2020-04-10 Rainer Orth - - * testsuite/ld-shared/shared.exp: Remove dangling comments. - xfail shared non PIC tests on Solaris. - -2020-04-09 Rainer Orth - - * testsuite/ld-elf/shared.exp: Add -Av9 to AFLAGS_PIC on sparc*-*-*. - -2020-04-02 H.J. Lu - - * testsuite/config/default.exp (NOCF_PROTECTION_CFLAGS): Replace - nopie with available. - -2020-04-02 H.J. Lu - - * testsuite/config/default.exp (NOCF_PROTECTION_CFLAGS): New. - Set to "-fcf-protection=none" if target compiler supports it. - * testsuite/ld-srec/srec.exp: Add $NOCF_PROTECTION_CFLAGS to - CC and CXX. - * testsuite/ld-x86-64/x86-64.exp: Add $NOCF_PROTECTION_CFLAGS - to PLT BND tests. - -2020-04-02 H.J. Lu - - * testsuite/ld-elf/linux-x86.exp (check_pr25749a): Compile with - -I../bfd. - (check_pr25749b): Likewise. - -2020-04-02 Rainer Orth - - * testsuite/ld-ifunc/ifunc-10-i386.d: Remove *-*-solaris2* from - notarget. - * ifunc-11-i386.d: Likewise. - * ifunc-12-i386.d: Likewise. - * ifunc-13-i386.d: Likewise. - * ifunc-14a-i386.d: Likewise. - * ifunc-14b-i386.d: Likewise. - * ifunc-14c-i386.d: Likewise. - * ifunc-14d-i386.d: Likewise. - * ifunc-14e-i386.d: Likewise. - * ifunc-14f-i386.d: Likewise. - * ifunc-15-i386.d: Likewise. - * ifunc-16-i386-now.d: Likewise. - * ifunc-16-i386.d: Likewise. - * ifunc-17a-i386.d: Likewise. - * ifunc-17b-i386.d: Likewise. - * ifunc-18a-i386.d: Likewise. - * ifunc-18b-i386.d: Likewise. - * ifunc-19a-i386.d: Likewise. - * ifunc-19b-i386.d: Likewise. - * ifunc-2-i386-now.d: Likewise. - * ifunc-2-i386.d: Likewise. - * ifunc-2-local-i386-now.d: Likewise. - * ifunc-2-local-i386.d: Likewise. - * ifunc-20-i386.d: Likewise. - * ifunc-21-i386.d: Likewise. - * ifunc-22-i386.d: Likewise. - * ifunc-5a-i386.d: Likewise. - * ifunc-5a-local-i386.d: Likewise. - * ifunc-5b-i386.d: Likewise. - * ifunc-5b-local-i386.d: Likewise. - * ifunc-5r-local-i386.d: Likewise. - * ifunc-6a-i386.d: Likewise. - * ifunc-6b-i386.d: Likewise. - * ifunc-7a-i386.d: Likewise. - * ifunc-7b-i386.d: Likewise. - * ifunc-8-i386.d: Likewise. - * ifunc-9-i386.d: Likewise. - * pr17154-i386-now.d: Likewise. - * pr17154-i386.d: Likewise. - - * ifunc-23a-x86.d: Remove notarget. - * ifunc-24a-x86.d: Likewise. - * ifunc-25a-x86.d: Likewise. - -2020-04-02 Nick Clifton - - PR ld/25747 - * ldfile.c (ldfile_open_file): Fix typo in warning message. - -2020-04-01 H.J. Lu - - PR ld/25749 - PR ld/25754 - * testsuite/ld-elf/linux-x86.exp: Run ld/25749 tests. - * testsuite/ld-elf/pr25749-1.c: New file. - * testsuite/ld-elf/pr25749-1a.c: Likewise. - * testsuite/ld-elf/pr25749-1b.c: Likewise. - * testsuite/ld-elf/pr25749-1b.err: Likewise. - * testsuite/ld-elf/pr25749-1c.c: Likewise. - * testsuite/ld-elf/pr25749-1d.c: Likewise. - * testsuite/ld-elf/pr25749-2.c: Likewise. - * testsuite/ld-elf/pr25749-2a.s: Likewise. - * testsuite/ld-elf/pr25749-2b.s: Likewise. - * testsuite/ld-elf/pr25749.rd: Likewise. - * testsuite/ld-elf/pr25754-1a.c: Likewise. - * testsuite/ld-elf/pr25754-1b.s: Likewise. - * testsuite/ld-elf/pr25754-2a.c: Likewise. - * testsuite/ld-elf/pr25754-2b.err: Likewise. - * testsuite/ld-elf/pr25754-2b.s: Likewise. - * testsuite/ld-elf/pr25754-3a.c: Likewise. - * testsuite/ld-elf/pr25754-3b.s: Likewise. - * testsuite/ld-elf/pr25754-4a.c: Likewise. - * testsuite/ld-elf/pr25754-4b.s: Likewise. - * testsuite/ld-elf/pr25754-4c.s: Likewise. - * testsuite/ld-elf/pr25754-5a.c: Likewise. - * testsuite/ld-elf/pr25754-5b.s: Likewise. - * testsuite/ld-elf/pr25754-5c.s: Likewise. - * testsuite/ld-elf/pr25754-6a.c: Likewise. - * testsuite/ld-elf/pr25754-6b.s: Likewise. - * testsuite/ld-x86-64/pr19609-6a.d: Don't expect linker error. - -2020-04-01 Tamar Christina - - PR ld/16017 - * testsuite/ld-arm/arm-elf.exp (thumb-plt, thumb-plt-got): Skip for NaCL. - -2020-04-01 Nick Clifton - - PR ld/25747 - * ldfile.c (ldfile_open_file): If a search for a library fails, - but there is a file that would match if it had a "lib" prefix to - its name, then tell the user. - -2020-04-01 Tamar Christina - - PR ld/16017 - * testsuite/ld-arm/arm-elf.exp (thumb-plt-got): New. - * testsuite/ld-arm/thumb-plt-got.d: New test. - -2020-04-01 Tamar Christina - - * testsuite/ld-arm/arm-elf.exp (thumb-plt): New. - * testsuite/ld-arm/thumb-plt.d: New test. - * testsuite/ld-arm/thumb-plt.s: New test. - -2020-04-01 Hans-Peter Nilsson - - * testsuite/ld-scripts/defined4.d: Don't xfail mmix-*-*. - -2020-03-30 Nick Clifton - - PR binutils/25662 - * emultempl/pe.em (after_open): Replace initialisation of the - insert_timestamp field in the pe_data structure with an - initialisation of the timestamp field. - * emultemp/pep.em: Likewise. - * pe-dll.c (fill_edata): Use the timestamp field in the pe_data - structure instead of the insert_timestamp field. - -2020-03-28 H.J. Lu - - PR 25732 - * emulparams/elf_i386_ldso.sh (COMMONPAGESIZE): New. - * testsuite/ld-elf/shared.exp:Don't xfail pr20995-2 tests for - Solaris. - -2020-03-27 H.J. Lu - - PR 25732 - * testsuite/ld-elf/shared.exp: Xfail pr20995-2 tests for Solaris. - -2020-03-27 H.J. Lu - - PR 25732 - * testsuite/ld-ifunc/ifunc-23a-x86.d: Add notarget for Solaris. - * testsuite/ld-ifunc/ifunc-24a-x86.d: Likewise. - * testsuite/ld-ifunc/ifunc-25a-x86.d: Likewise. - -2020-03-25 Alan Modra - - * testsuite/ld-elf/compress1c.d: xfail h8300. - * testsuite/ld-elf/compressed1c.d: Likewise. - * testsuite/ld-elf/compressed1e.d: Likewise. - * testsuite/ld-elf/dynamic1.d: Likewise. - * testsuite/ld-elf/dynsym1.d: Likewise. - * testsuite/ld-elf/ehdr_start-shared.d: Likewise. - * testsuite/ld-elf/exclude3b.d: Likewise. - * testsuite/ld-elf/export-class.exp: Don't run without -shared support. - * testsuite/ld-elf/global1.d: xfail h8300. - * testsuite/ld-elf/hash.d: Likewise. - * testsuite/ld-elf/loadaddr1.d: Likewise. - * testsuite/ld-elf/loadaddr2.d: Likewise. - * testsuite/ld-elf/local1.d: Likewise. - * testsuite/ld-elf/mbind1b.d: Likewise. - * testsuite/ld-elf/mbind1c.d: Likewise. - * testsuite/ld-elf/now-1.d: Likewise. - * testsuite/ld-elf/now-2.d: Likewise. - * testsuite/ld-elf/now-3.d: Likewise. - * testsuite/ld-elf/now-4.d: Likewise. - * testsuite/ld-elf/pie.d: Likewise. - * testsuite/ld-elf/pr12975.d: Likewise. - * testsuite/ld-elf/pr13177.d: Likewise. - * testsuite/ld-elf/pr13195.d: Likewise. - * testsuite/ld-elf/pr16322.d: Likewise. - * testsuite/ld-elf/pr16498a.d: Likewise. - * testsuite/ld-elf/pr16498b.d: Likewise. - * testsuite/ld-elf/pr17615.d: Likewise. - * testsuite/ld-elf/pr19162.d: Likewise. - * testsuite/ld-elf/pr19539.d: Likewise. - * testsuite/ld-elf/pr19617a.d: Likewise. - * testsuite/ld-elf/pr19698.d: Likewise. - * testsuite/ld-elf/pr20513c.d: Likewise. - * testsuite/ld-elf/pr20513d.d: Likewise. - * testsuite/ld-elf/pr21389a.d: Likewise. - * testsuite/ld-elf/pr21389b.d: Likewise. - * testsuite/ld-elf/pr21389c.d: Likewise. - * testsuite/ld-elf/pr21562a.d: Likewise. - * testsuite/ld-elf/pr21562b.d: Likewise. - * testsuite/ld-elf/pr21562c.d: Likewise. - * testsuite/ld-elf/pr21562d.d: Likewise. - * testsuite/ld-elf/pr21562e.d: Likewise. - * testsuite/ld-elf/pr21562f.d: Likewise. - * testsuite/ld-elf/pr21562g.d: Likewise. - * testsuite/ld-elf/pr21562h.d: Likewise. - * testsuite/ld-elf/pr21562i.d: Likewise. - * testsuite/ld-elf/pr21562j.d: Likewise. - * testsuite/ld-elf/pr21562k.d: Likewise. - * testsuite/ld-elf/pr21562l.d: Likewise. - * testsuite/ld-elf/pr21562m.d: Likewise. - * testsuite/ld-elf/pr21562n.d: Likewise. - * testsuite/ld-elf/pr21903a.d: Likewise. - * testsuite/ld-elf/pr21903b.d: Likewise. - * testsuite/ld-elf/pr21903d.d: Likewise. - * testsuite/ld-elf/pr22269a.d: Likewise. - * testsuite/ld-elf/pr22269b.d: Likewise. - * testsuite/ld-elf/pr22393-1a.d: Likewise. - * testsuite/ld-elf/pr22393-1b.d: Likewise. - * testsuite/ld-elf/pr22393-1c.d: Likewise. - * testsuite/ld-elf/pr22393-1d.d: Likewise. - * testsuite/ld-elf/pr22393-1e.d: Likewise. - * testsuite/ld-elf/pr22393-1f.d: Likewise. - * testsuite/ld-elf/pr22423.d: Likewise. - * testsuite/ld-elf/pr22450.d: xfail avr, crx, h8300, ip2k, m68hc11, - and xc16x. - * testsuite/ld-elf/pr23658-1c.d: xfail h8300. - * testsuite/ld-elf/pr25708.d: xfail h8300 and hppa64. - * testsuite/ld-elf/rpath-1.d: xfail h8300. - * testsuite/ld-elf/rpath-2.d: Likewise. - * testsuite/ld-elf/runpath-1.d: Likewise. - * testsuite/ld-elf/runpath-2.d: Likewise. - * testsuite/ld-elf/sizeofb.d: Likewise. - * testsuite/ld-elf/startofb.d: Likewise. - * testsuite/ld-elf/strtab.d: Likewise. - * testsuite/ld-elf/textaddr1.d: Likewise. - * testsuite/ld-elf/textaddr2.d: Likewise. - * testsuite/ld-elf/textaddr4.d: Likewise. - * testsuite/ld-elf/textaddr5.d: Likewise. - * testsuite/ld-elf/textaddr6.d: Likewise. - * testsuite/ld-elf/unknown2.d: Likewise. - * testsuite/ld-undefined/entry-3.d: Likewise. - * testsuite/ld-undefined/entry-4.d: Likewise. - * testsuite/ld-h8300/h8300.exp: Pass appropriate ld -m option. - * testsuite/ld-h8300/gcsection.d: Remove ld -m option and relax - file format match. - * testsuite/ld-h8300/relax-2.d: Likewise. - * testsuite/ld-h8300/relax-3.d: Likewise. - * testsuite/ld-h8300/relax-4.d: Likewise. - * testsuite/ld-h8300/relax-5.d: Likewise. - * testsuite/ld-h8300/relax-6.d: Likewise. - * testsuite/ld-h8300/relax-7.d: Likewise. - * testsuite/ld-h8300/relax.d: Relax file format match. - -2020-03-24 H.J. Lu - - PR binutils/25708 - * testsuite/ld-elf/pr25708.d: New file. - -2020-03-23 Alan Modra - - * Makefile.am (ALL_EMULATION_SOURCES): Reinstate ei386aout.c. - Include ei386aout dep file. - * Makefile.in: Regenerate. - * po/BLD-POTFILES.in: Regenerate. - -2020-03-20 H.J. Lu - - * testsuite/ld-plugin/lto.exp (lto_link_tests): Run PR ld/25355 - test only for GCC 10 or newer. - -2020-03-20 Alan Modra - - * testplug.c (parse_symdefstr): Use %hhi to read sym->def, and - clear new fields. - * testplug2.c (parse_symdefstr): Likewise. - * testplug3.c (parse_symdefstr): Likewise. - * testplug4.c (parse_symdefstr): Likewise. - -2020-03-18 Christophe Lyon - - * testsuite/ld-arm/non-contiguous-arm4.d: Fix expected output. - * testsuite/ld-powerpc/non-contiguous-powerpc.d: Likewise. - -2020-03-18 Christophe Lyon - - * emultempl/xtensaelf.em: Emit a fatal error message - instead of calling abort. - * ldlang.c: Likewise. - -2020-03-14 Alan Modra - - * testsuite/ld-elf/non-contiguous.d: Don't xfail generic ELF - targets. Don't skip xtensa, xfail instead. - -2020-03-13 Christophe Lyon - - * ldlang.c (lang_add_section): Add support for - non_contiguous_regions. - (size_input_section): Likewise. - (lang_size_sections_1): Likewise. - (process_insert_statements): Likewise. - * ldlex.h (option_values): Add OPTION_NON_CONTIGUOUS_REGIONS and - OPTION_NON_CONTIGUOUS_REGIONS_WARNINGS. - * lexsup.c (ld_options): Add entries for - --enable-non-contiguous-regions and - --enable-non-contiguous-regions-warnings. - (parse_args): Handle it. - * NEWS: Add --enable-non-contiguous-regions and - --enable-non-contiguous-regions-warnings. - * ld.texi: Add --enable-non-contiguous-regions and - --enable-non-contiguous-regions-warnings documentation. - * emultempl/armelf.em (elf32_arm_add_stub_section): Add - SEC_LINKER_CREATED flag. - * emultempl/xtensaelf.em (ld_build_required_section_dependence): - Emit an error when --enable-non-contiguous-regions is used. - * testsuite/ld-elf/non-contiguous.d: New. - * testsuite/ld-elf/non-contiguous.ld: New. - * testsuite/ld-elf/non-contiguous.s: New. - * testsuite/ld-arm/arm-elf.exp: Run the new tests. - * testsuite/ld-arm/arm-elf/non-contiguous-arm.s: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm.d: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm.ld: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm2.d: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm3.ld: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm3.d: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm3.ld: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm4.d: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm4.ld: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm5.d: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm5.ld: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm6.d: New. - * testsuite/ld-arm/arm-elf/non-contiguous-arm6.ld: New. - * testsuite/ld-powerpc/powerpc.exp: Run new tests. - * testsuite/ld-powerpc/non-contiguous-powerpc.d: New. - * testsuite/ld-powerpc/non-contiguous-powerpc.ld: New. - * testsuite/ld-powerpc/non-contiguous-powerpc.sd: New. - * testsuite/ld-powerpc/non-contiguous-powerpc64.d: New. - -2020-03-13 H.J. Lu - - PR ld/24920 - * emulparams/elf32_x86_64.sh: Use static.sh. - * emulparams/elf_i386.sh: Likewise. - * emulparams/elf_x86_64.sh: Likewise. - * emulparams/static.sh: New file. - * emultempl/elf-x86.em: Include "ldlex.h". - * testsuite/ld-elf/pr24920.err: New file. - * testsuite/ld-elf/linux-x86.exp: Run ld/24920 tests. - -2020-03-13 Christian Eggers - - * ldexp.c (fold_name): Return SIZEOF_HEADERS in bytes. - -2020-03-11 Alan Modra - - * ldelf.c (elf_orphan_compatible): Return false when two sections - have differing SHF_MASKPROC or SHF_MASKOS flags. - -2020-03-05 Alan Modra - - PR 25570 - * ldlang.c (lang_size_sections_1): Don't report changes on - second and subsequent iterations that make no change in - alignment from that already reported. - -2020-03-05 Alan Modra - - PR 25570 - * ldlang.c (lang_sizing_iteration): New static var. - (lang_size_sections_1): Warn about no memory region only on first - iteration. Warn about changing start address on first iteration - then any delta from that on subsequent iterations. Report a signed - delta. - (one_lang_size_sections_pass): Increment lang_sizing_iteration. - -2020-03-03 Nick Clifton - - PR 25588 - * ld.texi (Options): Update the description of the --rpath-link - option. - -2020-03-02 Alan Modra - - * plugin.c (plugin_object_p): Return a bfd_cleanup. - (plugin_cleanup): New function. - -2020-03-01 H.J. Lu - - PR ld/25618 - * plugin.c (plugin_object_p): Copy the no_export field to the IR - dummy object. - * testsuite/ld-plugin/lto.exp (lto_link_elf_tests): Add - PR ld/25618 tests. - * testsuite/ld-plugin/pr25618.d: New file. - * testsuite/ld-plugin/pr25618a.cc: Likewise. - * testsuite/ld-plugin/pr25618a.h: Likewise. - * testsuite/ld-plugin/pr25618b.cc: Likewise. - * testsuite/ld-plugin/pr25618b.h: Likewise. - -2020-02-27 Alan Modra - - PR 24511 - * testsuite/ld-mmix/b-fixo2.d: Adjust for .data change. - * testsuite/ld-mmix/sec-2.d: Likewise. - * testsuite/ld-mmix/sec-3.d: Likewise. - * testsuite/ld-mmix/sec-4.d: Likewise. - * testsuite/ld-mmix/spec802.d: Likewise. - * testsuite/ld-mmix/spec803.d: Likewise. - * testsuite/ld-mmix/spec804.d: Likewise. - * testsuite/ld-mmix/spec805.d: Likewise. - * testsuite/ld-mmix/spec806.d: Likewise. - * testsuite/ld-mmix/spec807.d: Likewise. - * testsuite/ld-mmix/spec808.d: Likewise. - -2020-02-26 H.J. Lu - - PR ld/25593 - * testsuite/ld-plugin/lto.exp: Run PR ld/25593 tests. - * testsuite/ld-plugin/pr25593.d: New file. - * testsuite/ld-plugin/pr25593a-1.c: Likewise. - * testsuite/ld-plugin/pr25593a-2.c: Likewise. - * testsuite/ld-plugin/pr25593b.c: Likewise. - * testsuite/ld-plugin/pr25593c.c: Likewise. - * testsuite/ld-plugin/pr25593d.c: Likewise. - * testsuite/ld-plugin/pr25593e.c: Likewise. - -2020-02-26 Alan Modra - - * emultempl/cskyelf.em: Indent labels correctly. - * ldfile.c: Likewise. - * ldlang.c: Likewise. - * plugin.c: Likewise. - -2020-02-26 Alan Modra - - PR 25593 - * ldelf.c (ldelf_try_needed): Add DT_NEEDED lib to input_bfds. - (ldelf_after_open): Save state of input_bfds list before loading - DT_NEEDED libs. Traverse input_bfds list adding DT_NEEDED tags. - Restore input_bfds list. - * testsuite/ld-cris/gotplt1.d: Adjust for changed .dynstr order. - -2020-02-24 Nick Clifton - - * po/fr.po: Update French translation. - -2020-02-22 Alan Modra - - PR 25585 - * NEWS: Mention better "PHDR segment not covered by LOAD segment" - checking. - -2020-02-19 Sergey Belyashov - - PR 25537 - * emultempl/z80.em: Remove machine compatability checking. - -2020-02-19 Sergey Belyashov - - PR 25517 - * testsuite/ld-z80/arch_ez80_adl.d: Update command line. - * testsuite/ld-z80/arch_ez80_z80.d: Likewise. - * testsuite/ld-z80/arch_r800.d: Likewise. - * testsuite/ld-z80/arch_z180.d: Likewise. - * testsuite/ld-z80/arch_z80n.d: Likewise. - * testsuite/ld-z80/comb_arch_ez80_z80.d: Likewise. - * testsuite/ld-z80/comb_arch_z180_z80.d: Likewise. - * testsuite/ld-z80/comb_arch_z80_ez80.d: Likewise. - * testsuite/ld-z80/comb_arch_z80_z180.d: Likewise. - * testsuite/ld-z80/comb_arch_z80_z80n.d: Likewise. - * testsuite/ld-z80/relocs_b_ez80.d: Likewise. - * testsuite/ld-z80/relocs_b_z80.d: Likewise. - * testsuite/ld-z80/relocs_f_ez80.d: Likewise. - * testsuite/ld-z80/relocs_f_z80.d: Likewise. - * testsuite/ld-z80/relocs_f_z80n.d: Likewise. - -2020-02-19 Alan Modra - - * testsuite/ld-plugin/pr25355.d: Allow alpha-linux nm result. - -2020-02-10 H.J. Lu - - PR binutils/25355 - * testsuite/ld-plugin/lto.exp: Run PR binutils/25355 test. - * testsuite/ld-plugin/pr25355.c: New file. - * testsuite/ld-plugin/pr25355.d: Likewise. - * testsuite/lib/ld-lib.exp (run_cc_link_tests): Support compile - only dump. - -2020-02-07 H.J. Lu - - * testsuite/ld-unique/unique.exp (contains_unique_symbol): Updated. - -2020-02-07 Sergey Belyashov - - PR 25469 - * emulparams/elf32z80.sh: Use z80 emulation. - * emultempl/z80.em: Make generic to both COFF and ELF Z80 emulations. - * emultempl/z80elf.em: Delete. - * testsuite/ld-elf/pr22450.d: Expect to fail for the Z80. - * testsuite/ld-elf/sec64k.exp: Fix Z80 assembly. - * testsuite/ld-unique/pr21529.s: Avoid register name conflict. - * testsuite/ld-unique/unique.s: Likewise. - * testsuite/ld-unique/unique_empty.s: Likewise. - * testsuite/ld-unique/unique_shared.s: Likewise. - * testsuite/ld-unique/unique.d: Updated expected output. - * testsuite/ld-z80/arch_z80n.d: New file. - * testsuite/ld-z80/comb_arch_z80_z80n.d: New file. - * testsuite/ld-z80/labels.s: Add more labels. - * testsuite/ld-z80/relocs.s: Add more reloc tests. - * testsuite/ld-z80/relocs_f_z80n.d: New file - -2020-02-07 H.J. Lu - - PR ld/25022 - * testsuite/ld-elf/pr25022.d: Xfail more targets which don't use - ldelf_before_place_orphans. - -2020-02-06 H.J. Lu - - PR ld/25022 - * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Add - before_place_orphans_default. - * emultempl/armcoff.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/beos.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/generic.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/linux.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/msp430.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/pe.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/pep.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/ticoff.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/vanilla.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/elf.em (ld_${EMULATION_NAME}_emulation): Use - ldelf_before_place_orphans. - * ldelf.c (ldelf_before_place_orphans): New. - * ldelf.h (ldelf_before_place_orphans): Likewise. - * ldemul.c (ldemul_before_place_orphans): Likewise. - (before_place_orphans_default): Likewise. - * ldemul.h (ldemul_before_place_orphans): Likewise. - (before_place_orphans_default): Likewise. - (ld_emulation_xfer_struct): Add before_place_orphans. - * ldlang.c (lang_process): Call ldemul_before_place_orphans - before lang_place_orphans. - * testsuite/ld-elf/pr25022.d: New file. - * testsuite/ld-elf/pr25022.s: Likewise. - * testsuite/ld-elf/pr25022.t: Likewise. - -2020-02-06 H.J. Lu - - PR ld/25490 - * testsuite/ld-elf/pr25490-1.d: New file. - * testsuite/ld-elf/pr25490-1.s: Likewise. - -2020-02-06 H.J. Lu - - PR ld/24526 - PR ld/25021 - PR ld/25490 - * testsuite/ld-elf/elf.exp: Run PR ld/25490 tests. - * testsuite/ld-elf/pr24526.d: New file. - * testsuite/ld-elf/pr24526.s: Likewise. - * testsuite/ld-elf/pr25021.d: Likewise. - * testsuite/ld-elf/pr25021.s: Likewise. - * testsuite/ld-elf/pr25490-2-16.rd: Likewise. - * testsuite/ld-elf/pr25490-2-32.rd: Likewise. - * testsuite/ld-elf/pr25490-2-64.rd: Likewise. - * testsuite/ld-elf/pr25490-2.s: Likewise. - * testsuite/ld-elf/pr25490-3-16.rd: Likewise. - * testsuite/ld-elf/pr25490-3-32.rd: Likewise. - * testsuite/ld-elf/pr25490-3-64.rd: Likewise. - * testsuite/ld-elf/pr25490-3.s: Likewise. - * testsuite/ld-elf/pr25490-4-16.rd: Likewise. - * testsuite/ld-elf/pr25490-4-32.rd: Likewise. - * testsuite/ld-elf/pr25490-4-64.rd: Likewise. - * testsuite/ld-elf/pr25490-4.s: Likewise. - * testsuite/ld-elf/pr25490-5-16.rd: Likewise. - * testsuite/ld-elf/pr25490-5-32.rd: Likewise. - * testsuite/ld-elf/pr25490-5-64.rd: Likewise. - * testsuite/ld-elf/pr25490-5.s: Likewise. - * testsuite/ld-elf/pr25490-6-16.rd: Likewise. - * testsuite/ld-elf/pr25490-6-32.rd: Likewise. - * testsuite/ld-elf/pr25490-6-64.rd: Likewise. - * testsuite/ld-elf/pr25490-6.s: Likewise. - -2020-02-06 H.J. Lu - - * testsuite/lib/ld-lib.exp (check_gc_sections_available): Mark - z80 as not supported. - -2020-02-06 Alan Modra - - * testsuite/ld-ifunc/ifunc.exp: Enable for more targets, specifying - targets that don't support ifunc rather than ones that do. - (contains_irelative_reloc): Match R_PARISC_IPLT. - * testsuite/ld-ifunc/lib.c: Don't use .set in asm. - * testsuite/ld-ifunc/ifunc-23-x86.s, - * testsuite/ld-ifunc/ifunc-24-x86.s, - * testsuite/ld-ifunc/ifunc-25-x86.s, - * testsuite/ld-ifunc/ifunc-4-local-x86.s, - * testsuite/ld-ifunc/ifunc-4-x86.s: Define _main. - * testsuite/ld-ifunc/ifunc-10-i386.d, - * testsuite/ld-ifunc/ifunc-11-i386.d, - * testsuite/ld-ifunc/ifunc-12-i386.d, - * testsuite/ld-ifunc/ifunc-13-i386.d, - * testsuite/ld-ifunc/ifunc-14a-i386.d, - * testsuite/ld-ifunc/ifunc-14b-i386.d, - * testsuite/ld-ifunc/ifunc-14c-i386.d, - * testsuite/ld-ifunc/ifunc-14d-i386.d, - * testsuite/ld-ifunc/ifunc-14e-i386.d, - * testsuite/ld-ifunc/ifunc-14f-i386.d, - * testsuite/ld-ifunc/ifunc-15-i386.d, - * testsuite/ld-ifunc/ifunc-16-i386-now.d, - * testsuite/ld-ifunc/ifunc-16-i386.d, - * testsuite/ld-ifunc/ifunc-17a-i386.d, - * testsuite/ld-ifunc/ifunc-17b-i386.d, - * testsuite/ld-ifunc/ifunc-18a-i386.d, - * testsuite/ld-ifunc/ifunc-18b-i386.d, - * testsuite/ld-ifunc/ifunc-19a-i386.d, - * testsuite/ld-ifunc/ifunc-19b-i386.d, - * testsuite/ld-ifunc/ifunc-2-i386-now.d, - * testsuite/ld-ifunc/ifunc-2-i386.d, - * testsuite/ld-ifunc/ifunc-2-local-i386-now.d, - * testsuite/ld-ifunc/ifunc-2-local-i386.d, - * testsuite/ld-ifunc/ifunc-20-i386.d, - * testsuite/ld-ifunc/ifunc-21-i386.d, - * testsuite/ld-ifunc/ifunc-22-i386.d, - * testsuite/ld-ifunc/ifunc-26.d, - * testsuite/ld-ifunc/ifunc-5a-i386.d, - * testsuite/ld-ifunc/ifunc-5a-local-i386.d, - * testsuite/ld-ifunc/ifunc-5b-i386.d, - * testsuite/ld-ifunc/ifunc-5b-local-i386.d, - * testsuite/ld-ifunc/ifunc-5r-local-i386.d, - * testsuite/ld-ifunc/ifunc-6a-i386.d, - * testsuite/ld-ifunc/ifunc-6b-i386.d, - * testsuite/ld-ifunc/ifunc-7a-i386.d, - * testsuite/ld-ifunc/ifunc-7b-i386.d, - * testsuite/ld-ifunc/ifunc-8-i386.d, - * testsuite/ld-ifunc/ifunc-9-i386.d, - * testsuite/ld-ifunc/pr17154-i386-now.d, - * testsuite/ld-ifunc/pr17154-i386.d: xfail lynxos, nto, and solaris. - -2020-02-06 Alan Modra - - * testsuite/lib/ld-lib.exp (is_generic): Delete. - * testsuite/ld-unique/unique.exp: Exclude tic6x. - -2020-02-06 Alan Modra - - * configure.tgt (i[3-7]86-*-moss*): Don't clear targ_extra_ofiles. - (i[3-7]86-*-openbsd*, x86_64-*-openbsd*): Add. - -2020-02-02 H.J. Lu - - PR gas/25380 - * testsuite/ld-i386/pr22001-1c.S: Use "unique,N" in .section - directives. - * testsuite/ld-i386/tls-gd1.S: Likewise. - * testsuite/ld-x86-64/pr21481b.S: Likewise. - -2020-01-30 Jan Beulich - - * ld.texi: Remove space between @option and brace. - -2020-01-29 Alan Modra - - PR 25477 - * ldelf.c (ldelf_check_ld_so_conf): Add prefix parameter and - correct concat. - (ldelf_after_open): Add prefix parameter. - * ldelf.h (ldelf_after_open): Update prototype. - * emultempl/elf.em (gld${EMULATION_NAME}_after_open): Pass $prefix - to ldelf_after_open. - * Makefile.am: Correct z80 dependencies. - * Makefile.in: Regenerate. - -2020-01-28 Alan Modra - - * ldexp.c (fold_name): Don't print bfd_link_hash_lookup failed - in first phase. - -2020-01-27 Alan Modra - - * testsuite/ld-elfvers/vers.exp: Replace case statements with - switch statements. - * testsuite/ld-ifunc/ifunc.exp: Likewise. - * testsuite/ld-unique/unique.exp: Likewise. - -2020-01-27 H.J. Lu - Alan Modra - - PR ld/25458 - * testsuite/ld-elf/pr25458.map: New file. - * testsuite/ld-elf/pr25458.rd: Likewise. - * testsuite/ld-elf/pr25458a.s: Likewise. - * testsuite/ld-elf/pr25458b.s: Likewise. - * testsuite/ld-elf/shared.exp: Run PR ld/25458 test. - -2020-01-22 H.J. Lu - - PR ld/25416 - * testsuite/ld-x86-64/tls.exp: Skip GNU2 TLS tests only without - compiler support. - -2020-01-22 Alan Modra - - * testsuite/ld-powerpc/tlsdesc3.d, - * testsuite/ld-powerpc/tlsdesc3.wf, - * testsuite/ld-powerpc/tlsdesc4.d, - * testsuite/ld-powerpc/tlsdesc4.s, - * testsuite/ld-powerpc/tlsdesc4.wf: New tests. - * testsuite/ld-powerpc/powerpc.exp: Run them. - -2020-01-22 Alan Modra - - * emultempl/ppc64elf.em (ppc64_opt, PARSE_AND_LIST_LONGOPTS), - (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Support - --tls-get-addr-regsave and --no-tls-get-addr-regsave. - (params): Init new field. - * ld.texi (--tls-get-addr-regsave, --no-tls-get-addr-regsave): - Document. - * testsuite/ld-powerpc/tlsdesc.s, - * testsuite/ld-powerpc/tlsdesc.d, - * testsuite/ld-powerpc/tlsdesc.wf, - * testsuite/ld-powerpc/tlsdesc2.d, - * testsuite/ld-powerpc/tlsdesc2.wf, - * testsuite/ld-powerpc/tlsexenors.d, - * testsuite/ld-powerpc/tlsexenors.r, - * testsuite/ld-powerpc/tlsexers.d, - * testsuite/ld-powerpc/tlsexers.r, - * testsuite/ld-powerpc/tlsexetocnors.d, - * testsuite/ld-powerpc/tlsexetocrs.d, - * testsuite/ld-powerpc/tlsexetocrs.r, - * testsuite/ld-powerpc/tlsopt6.d, - * testsuite/ld-powerpc/tlsopt6.wf: New. - * testsuite/ld-powerpc/powerpc.exp: Run new tests. - -2020-01-22 Yuri Chornoivan - - PR 25417 - * ldlang.c (ldlang_open_ctf): Fix error message typo. - * emultempl/z80elf.em (z80_elf_after_open): Likewise. - -2020-01-21 H.J. Lu - - * testsuite/ld-elf/pr23900-1.d: Adjusted. - -2020-01-21 H.J. Lu - - * testsuite/ld-elf/pr23900-1.d: Also pass -l to readelf. - -2020-01-20 Nick Clifton - - * po/pt_BR.po: Updated Brazilian Portuguese translation. - * po/uk.po: Updated Ukranian translation. - -2020-01-20 H.J. Lu - - PR ld/25416 - * testsuite/ld-x86-64/pr25416-1.s: New file - * testsuite/ld-x86-64/pr25416-1a.d: Likewise. - * testsuite/ld-x86-64/pr25416-1b.d: Likewise. - * testsuite/ld-x86-64/pr25416-1.s: Likewise. - * testsuite/ld-x86-64/pr25416-2.s: Likewise. - * testsuite/ld-x86-64/pr25416-2a.d: Likewise. - * testsuite/ld-x86-64/pr25416-2b.d: Likewise. - * testsuite/ld-x86-64/pr25416-3.d: Likewise. - * testsuite/ld-x86-64/pr25416-3.s: Likewise. - * testsuite/ld-x86-64/pr25416-4.d: Likewise. - * testsuite/ld-x86-64/pr25416-4.s: Likewise. - * testsuite/ld-x86-64/pr25416-5a.c: Likewise. - * testsuite/ld-x86-64/pr25416-5b.s: Likewise. - * testsuite/ld-x86-64/pr25416-5c.s: Likewise. - * testsuite/ld-x86-64/pr25416-5d.s: Likewise. - * testsuite/ld-x86-64/pr25416-5e.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run PR ld/25416 tests. - -2020-01-20 Alan Modra - - * testsuite/ld-powerpc/tlsexe.d: Match new __tls_get_addr stub. - * testsuite/ld-powerpc/tlsexeno.d: Likewise. - * testsuite/ld-powerpc/tlsexetoc.d: Likewise. - * testsuite/ld-powerpc/tlsexetocno.d: Likewise. - * testsuite/ld-powerpc/tlsopt5.d: Likewise. - -2020-01-18 Roland McGrath - - * testsuite/ld-x86-64/align-branch-1.d: Loosen instruction regexps - to admit whatever absolute address. The label-relative address is - what the test needs to verify. - -2020-01-18 Nick Clifton - - * configure: Regenerate. - * po/ld.pot: Regenerate. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-16 Jozef Lawrynowicz - - * scripttempl/elf32msp430_3.sc: Remove. - -2020-01-16 Jozef Lawrynowicz - - * scripttempl/elf32msp430.sc: Add input section rules for - .upper.{text,data,rodata,bss}. - * testsuite/ld-msp430-elf/msp430-elf.exp: Run new test. - * testsuite/ld-msp430-elf/upper-input-sections.s: New test. - -2020-01-15 Lars Brinkhoff - - PR 20694 - * temulparams/pdp11.sh (TARGET_PAGE_SIZE): Set to 8192. - -2020-01-15 Jozef Lawrynowicz - - * testsuite/ld-msp430-elf/msp430-elf.exp: Run new test. - * testsuite/ld-msp430-elf/reloc-lo-430x.s: New test. - -2020-01-15 Alan Modra - - * testsuite/ld-powerpc/ambiguousv1b.d: Adjust expected output. - * testsuite/ld-powerpc/funref.s: Align func_tab. - * testsuite/ld-powerpc/funref2.s: Likewise. - * testsuite/ld-powerpc/funv1.s: Add dot symbols. - -2020-01-14 Lili Cui - - * testsuite/ld-i386/align-branch-1.d: Updated for i686-pc-elf. - -2020-01-13 Alan Modra - - * po/BLD-POTFILES.in: Regenerate. - -2020-01-13 Claudiu Zissulescu - - * testsuite/ld-arc/relax-local-pic.d: Improve matching patterns. - -2020-01-13 Claudiu Zissulescu - - * Makefile.am: Remove earcelf_prof.c and earclinux_prof.c - emulations. - * configure.tgt: Likewise. - * Makefile.in: Regenerate. - * emulparams/arcelf_prof.sh: Remove file. - * emulparams/arclinux_prof.sh: Likewise. - -2020-01-13 Claudiu Zissulescu - - * scripttempl/elfarcv2.sc : Allow interrupt vector table to be - located at an arbitrary address. Use DWARF.sc file. - * scripttempl/elfarc.sc: Use DWARF.sc file. - -2020-01-07 Alan Modra - - * testsuite/ld-mips-elf/eh-frame5.s, - * testsuite/ld-mips-elf/ehdr_start-new.s, - * testsuite/ld-mips-elf/ehdr_start-o32.s, - * testsuite/ld-mips-elf/mips16-call-global-1.s, - * testsuite/ld-mips-elf/mips16-intermix-1.s, - * testsuite/ld-mips-elf/mips16-pic-1b.s, - * testsuite/ld-mips-elf/mips16-pic-4c.s, - * testsuite/ld-mips-elf/no-shared-1-n64.s, - * testsuite/ld-mips-elf/no-shared-1-o32.s, - * testsuite/ld-mips-elf/pic-and-nonpic-1b-micromips.s, - * testsuite/ld-mips-elf/pic-and-nonpic-1b.s, - * testsuite/ld-mips-elf/pic-and-nonpic-2a.s, - * testsuite/ld-mips-elf/pic-and-nonpic-3b.s, - * testsuite/ld-mips-elf/pic-and-nonpic-4b.s, - * testsuite/ld-mips-elf/pic-and-nonpic-5a.s, - * testsuite/ld-mips-elf/pic-and-nonpic-6-n32c.s, - * testsuite/ld-mips-elf/pic-and-nonpic-6-n64c.s, - * testsuite/ld-mips-elf/pic-and-nonpic-6-o32c.s, - * testsuite/ld-mips-elf/pie.s, - * testsuite/ld-mips-elf/relax-jalr.s: Revert 2019-12-17 change. - -2020-01-06 Nick Clifton - - PR 25327 - * testsuite/ld-elf/shared.exp: Add -fcommon option to compiler - command line when building libcomm1.o and pr13250 tests. - * testsuite/ld-plugin/lto.exp: Likewise for pr20267 tests. - -2020-01-06 Nick Clifton - - PR 25326 - * testsuite/ld-elf/shared.exp: Add -fcommon option to compiler - command line when building pr19579 binaries. - -2020-01-03 Hannes Domani - - * emultempl/pe.em: Add new option --enable-reloc-section. - * emultempl/pep.em: Likewise. - * ld.texi: Document --enable-reloc-section. - * pe-dll.c (pe_dll_build_sections): Use pe_dll_enable_reloc_section. - (pe_dll_fill_sections): Simplify by calling pe_exe_fill_sections. - * pe-dll.h: Add extern declaration of option flag. - * pep-dll.c (pe_dll_enable_reloc_section): - Add alias define for pep_dll_enable_reloc_section. - * pep-dll.h: Add extern declaration of option flag. - -2020-01-02 Sergey Belyashov - - * Makefile.am: Add new target z80-elf - * configure.tgt: Likewise. - * Makefile.in: Regenerate. - * emultempl/z80.em: Add support for eZ80 and Z180 architectures. - * emulparams/elf32z80.sh: New file. - * emultempl/z80elf.em: Likewise. - * testsuite/ld-elf/comm-data4.s: Fix for Z80. - * testsuite/ld-elf/comm-data5.s: Fix for Z80. - * testsuite/ld-scripts/fill16.d: Fix for Z80. - * testsuite/ld-z80/arch_ez80_adl.d: Likewise. - * testsuite/ld-z80/arch_ez80_z80.d: Likewise. - * testsuite/ld-z80/arch_r800.d: Likewise. - * testsuite/ld-z80/arch_z180.d: Likewise. - * testsuite/ld-z80/arch_z80.d: Likewise. - * testsuite/ld-z80/comb_arch_ez80_z80.d: Likewise. - * testsuite/ld-z80/comb_arch_z180.d: Likewise. - * testsuite/ld-z80/labels.s: Likewise. - * testsuite/ld-z80/relocs.s: Likewise. - * testsuite/ld-z80/relocs_b_ez80.d: Likewise. - * testsuite/ld-z80/relocs_b_z80.d: Likewise. - * testsuite/ld-z80/relocs_f_z80.d: Likewise. - * testsuite/ld-z80/z80.exp: Likewise. - * NEWS: Mention the new support. - -2020-01-02 Tamar Christina - - PR 25210 - PR 24753 - * emultempl/aarch64elf.em (elf${ELFSIZE}_aarch64_add_stub_section): - Remove SEC_LINKER_CREATED. - * testsuite/ld-aarch64/aarch64-elf.exp: Add erratum835769-843419. - * testsuite/ld-aarch64/erratum835769-843419.d: New test. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2019 +For older changes see ChangeLog-2020 -Copyright (C) 2020 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/ld/ChangeLog-2020 b/ld/ChangeLog-2020 new file mode 100644 index 00000000000..03b4b224b7b --- /dev/null +++ b/ld/ChangeLog-2020 @@ -0,0 +1,4556 @@ +2020-12-31 H.J. Lu + Alan Modra + + PR 27128 + * testsuite/ld-elf/pr27128.s: New file. + * testsuite/ld-elf/pr27128.t: Likewise. + * testsuite/ld-elf/pr27128a.d: Likewise. + * testsuite/ld-elf/pr27128b.d: Likewise. + * testsuite/ld-elf/pr27128c.d: Likewise. + * testsuite/ld-elf/pr27128d.d: Likewise. + * testsuite/ld-elf/pr27128e.d: Likewise. + +2020-12-24 Alan Modra + + * testsuite/ld-elf/retain7a.d: Don't run on hppa-linux. + * testsuite/ld-elf/retain7b.d: Correct name. Don't run on tic6x. + Allow OSABI FreeBSD. + +2020-12-24 Alan Modra + + PR 27100 + * ldlang.h (lang_output_section_statement_type): Add dup_output. + * ldlang.c (lang_output_section_statement_lookup): Set dup_output. + (init_os): Test dup_output rather than constraint. + * testsuite/ld-scripts/pr27100.d, + * testsuite/ld-scripts/pr27100.s, + * testsuite/ld-scripts/pr27100.t: New test. + * testsuite/ld-scripts/data.exp: Run it. Don't exclude aout here. + * testsuite/ld-scripts/data.d: Do so here instead. + * testsuite/ld-scripts/fill.d: Likewise. + * testsuite/ld-scripts/fill16.d: Likewise. + +2020-12-23 H.J. Lu + + * NEWS: Mention LAM_U48 and LAM_U57 support. + * ld.texi: Document LAM_U48 and LAM_U57 support. + * emulparams/cet.sh: Updated. + * emulparams/elf_x86_64.sh: Source x86-64-lam.sh. + * emulparams/x86-64-lam.sh: New file. + * testsuite/ld-x86-64/property-x86-lam-u48-1a.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u48-1b.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u48-2.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u48-3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u48-3b.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u48-4.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u48-5.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u48.s: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u57-1a.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u57-1b.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u57-2.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u57-3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u57-3b.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u57-4.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u57-5.d: Likewise. + * testsuite/ld-x86-64/property-x86-lam-u57.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run LAM tests. + +2020-12-18 H.J. Lu + + PR ld/27082 + * Makefile.am + (libdep_la_LDFLAGS): Add -module -avoid-version. + (libdep_la_LINK): New. + (install-data-local): Depend on $(install-bfdpluginLTLIBRARIES) + and remove libdep.la. + +2020-12-18 H.J. Lu + + PR ld/27091 + * testsuite/ld-elf/retain7.s: New file. + * testsuite/ld-elf/retain7a.d: Likewise. + * testsuite/ld-elf/retain7b.d: Likewise. + +2020-12-16 Howard Chu + H.J. Lu + + PR ld/27081 + * libdep_plugin.c (onload): Skip if not all required plugin hooks + are available. + * testsuite/config/default.exp (dep_plug_opt): New. + * testsuite/ld-elf/elf.exp: Pass $dep_plug_opt to nm. + * testsuite/ld-elf/pr26391.fd: New file. + +2020-12-16 Alan Modra + + * ld.h (ld_config_type): Delete maxpagesize and commonpagesize. + * emultempl/elf.em: Use link_info rather than config + for maxpagesize and commonpagesize. + * emultempl/ppc32elf.em: Likewise. + * ldexp.c (fold_binary, fold_name): Likewise. + * ldemul.c (after_parse_default): Likewise. + (set_output_arch_default): Don't call bfd_emul_set_maxpagesize + or bfd_emul_set_commonpagesize. + +2020-12-15 Vivek Das Mohapatra + + * emultempl/elf.em (gld${EMULATION_NAME}_handle_option): + Parse -z unique / -z nounique options. + * ld.texi (Options): Document -z unique and -z nounique. + * lexsup.c (elf_shlib_list_options): Likewise. + +2020-12-14 Howard Chu + + * libdep_plugin.c: New file: Processes archives that contain a + special library dependencies element. + * Makefile.am: Add build rules for libdep_plugin. + * Makefile.in: Regenerate. + * NEWS: Mention the new plugin. + * ld.texi: Document the new plugin. + +2020-12-14 Alan Modra + + PR 26836 + * lexsup.c (parse_args): Free really_longopts, longopts and + shortopts. + +2020-12-14 Nick Clifton + + PR 27050 + * lexsup.c (parse_args): Ensure that the longind local variable is + set. + +2020-12-14 Alan Modra + + PR 27064 + * deffilep.y (SHARED_K): Rename from SHARED. Update uses. + +2020-12-05 Maciej W. Rozycki + + * testsuite/ld-vax-elf/got-local-exe-off-hidden.dd: New test + dump. + * testsuite/ld-vax-elf/got-local-exe-off-visible.dd: New test + dump. + * testsuite/ld-vax-elf/got-local-lib-off-hidden.dd: New test + dump. + * testsuite/ld-vax-elf/got-local-lib-off-visible.ed: New test + dump. + * testsuite/ld-vax-elf/got-local-off-external.ed: New test dump. + * testsuite/ld-vax-elf/got-local-exe-off.xd: New test dump. + * testsuite/ld-vax-elf/got-local-lib-off.xd: New test dump. + * testsuite/ld-vax-elf/got-local.ld: New test linker script. + * testsuite/ld-vax-elf/got-local-aux-off.s: New test source. + * testsuite/ld-vax-elf/got-local-def-off.s: New test source. + * testsuite/ld-vax-elf/got-local-ref-off-external.s: New test + source. + * testsuite/ld-vax-elf/got-local-ref-off-hidden.s: New test + source. + * testsuite/ld-vax-elf/got-local-ref-off-visible.s: New test + source. + * testsuite/ld-vax-elf/vax-elf.exp: Run the new tests. + +2020-12-04 H.J. Lu + + PR ld/27016 + * testsuite/ld-x86-64/x86-64.exp: Run pr27016a and pr27016b. + * testsuite/ld-x86-64/pr27016a.d: New file. + * testsuite/ld-x86-64/pr27016a.s: Likewise. + * testsuite/ld-x86-64/pr27016b.d: Likewise. + * testsuite/ld-x86-64/pr27016b.s: Likewise. + +2020-12-04 Alan Modra + + * testsuite/ld-elf/pr26978a.d, + * testsuite/ld-elf/pr26978a.s, + * testsuite/ld-elf/pr26978b.d, + * testsuite/ld-elf/pr26978b.s: New tests. + +2020-12-03 Andreas Krebbel + + * testsuite/ld-s390/tlsbin_64.dd: The newly added jgnop mnemonic + replaces long relative branches with empty condition code masks. + +2020-12-03 Maciej W. Rozycki + + * testsuite/ld-vax-elf/vax-elf.exp: Wrap excessively long lines + throughout. + +2020-12-02 Hans-Peter Nilsson + + * testsuite/ld-elf/pr26936.d: Pass -W. + +2020-12-01 H.J. Lu + + PR ld/26970 + * scripttempl/elfarc.sc (TEXT_START_ADDR): New. Add SEGMENT_START. + (SHLIB_TEXT_START_ADDR): Likewise. + +2020-12-01 Alan Modra + + * testsuite/ld-elf/elf.exp: Set ASFLAGS for tic6x. + * testsuite/ld-elf/reloc-discard.d: Remove tic6x xfail. + +2020-12-01 Alan Modra + + * testsuite/ld-elf/pr26979a.s, + * testsuite/ld-elf/pr26979b.s, + * testsuite/ld-elf/pr26979c.s, + * testsuite/ld-elf/pr26979.ver, + * testsuite/ld-elf/pr26979a.d, + * testsuite/ld-elf/pr26979b.d: New tests. + +2020-11-29 H.J. Lu + + PR ld/26936 + * testsuite/ld-elf/pr26936.d: Xfail targets which don't support + mixing linkonce and comdat sections. + +2020-11-28 Alan Modra + + * testsuite/ld-elf/pr26907.ld, + * testsuite/ld-elf/pr26907.s, + * testsuite/ld-elf/pr26907.d: New test. + +2020-11-27 Jozef Lawrynowicz + + * emulparams/armelf.sh (OTHER_SECTIONS): Remove .noinit section + definition. + Define HAVE_{NOINIT,PERSISTENT}=yes. + * scripttempl/avr.sc (.noinit): Add .noinit.* and .gnu.linkonce.n.* + input section wildcard patterns. + * scripttempl/elf.sc: Define .noinit and .persistent sections when + HAVE_NOINIT or HAVE_PERSISTENT are defined to "yes". + * scripttempl/elf32msp430.sc (.noinit): Add .noinit.* and + .gnu.linkonce.n.*. input section wildcard patterns. + (.persistent): Add .persistent.* and + .gnu.linkonce.p.*. input section wildcard patterns. + * scripttempl/elfarcv2.sc (.noinit): Add .noinit.* and + .gnu.linkonce.n.*. input section wildcard patterns. + * scripttempl/pru.sc: Likewise. + * testsuite/ld-elf/noinit-sections-1.d: New test. + * testsuite/ld-elf/noinit-sections-2.d: New test. + * testsuite/ld-elf/noinit-sections-2.l: New test. + * testsuite/ld-elf/noinit-sections.s: New test. + * testsuite/ld-elf/persistent-sections-1.d: New test. + * testsuite/ld-elf/persistent-sections-2.d: New test. + * testsuite/ld-elf/persistent-sections-2.l: New test. + * testsuite/ld-elf/persistent-sections.s: New test. + +2020-11-26 Alan Modra + + PR 26936 + * testsuite/ld-elf/pr26936.d: Pass --gen-debug to gas rather than -g. + Only run when -shared -z options are supported. + * testsuite/ld-elf/pr26936b.s: Define more entry symbols. + +2020-11-25 H.J. Lu + + PR ld/26936 + * testsuite/ld-elf/pr26936.d: New file. + * testsuite/ld-elf/pr26936a.s: Likewise. + * testsuite/ld-elf/pr26936b.s: Likewise. + * testsuite/ld-elf/pr26936c.s: Likewise. + +2020-11-25 Alan Modra + + * ldlang.c (lang_output_section_statement_lookup): Change "create" + parameter to a tristate, if 2 then always create a new output + section statement. Update all callers, with + lang_enter_output_section_statement using "2". + (map_input_to_output_sections): Don't ignore SPECIAL constraint + here. + * ldlang.h (lang_output_section_statement_type): Update prototype. + (lang_output_section_find): Update. + +2020-11-24 H.J. Lu + + PR gold/26939 + * testsuite/ld-x86-64/pr26939-x32.d: New file. + * testsuite/ld-x86-64/pr26939.d: Likewise. + * testsuite/ld-x86-64/pr26939.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run PR gold/26939 tests. + +2020-11-23 H.J. Lu + + PR ld/26918 + * testsuite/ld-s390/pr26918-1.d: New file. + * testsuite/ld-s390/pr26918-1.s: Likewise. + * testsuite/ld-s390/s390.exp: Run all *.d tests. + +2020-11-23 Shahab Vahedi + + * testsuite/ld-arc/tls_ie-01.d: Use a more general pattern. + +2020-11-21 Nelson Chu + + * emultempl/riscvelf.em (riscv_elf_before_allocation): Change + link_info.relax_pass from 3 to 4. + * testsuite/ld-riscv-elf/pcgp-relax.d: New testcase. + * testsuite/ld-riscv-elf/pcgp-relax.s: Likewise. + * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Updated. + +2020-11-20 Nick Alcock + + * testsuite/ld-ctf/data-func-conflicted.d: Shrink the expected + size of the type section now that function types are being + deduplicated properly. + +2020-11-20 Nick Alcock + + * testsuite/ld-ctf/array.d: Adjust for nonzero flags word and + public symbols in the data section rather than variables: use + sysv hash style to keep test results the same on non-GNU targets. + * testsuite/ld-ctf/diag-cttname-null.d: Likewise. + * testsuite/ld-ctf/diag-cuname.d: Likewise. + * testsuite/ld-ctf/diag-parlabel.d: Likewise. + * testsuite/ld-ctf/slice.d: Likewise. + * testsuite/ld-ctf/function.d: Likewise, but in the function section. + * testsuite/ld-ctf/conflicting-cycle-1.B-1.d: Adjust for nonzero + flags word. + * testsuite/ld-ctf/conflicting-cycle-1.B-2.d: Likewise. + * testsuite/ld-ctf/conflicting-cycle-1.parent.d: Likewise. + * testsuite/ld-ctf/conflicting-cycle-2.A-1.d: Likewise. + * testsuite/ld-ctf/conflicting-cycle-2.A-2.d: Likewise. + * testsuite/ld-ctf/conflicting-cycle-2.parent.d: Likewise. + * testsuite/ld-ctf/conflicting-cycle-3.C-1.d: Likewise. + * testsuite/ld-ctf/conflicting-cycle-3.C-2.d: Likewise. + * testsuite/ld-ctf/conflicting-cycle-3.parent.d: Likewise. + * testsuite/ld-ctf/cross-tu-noncyclic.d: Likewise. + * testsuite/ld-ctf/cycle-1.d: Likewise. + * testsuite/ld-ctf/cycle-2.A.d: Likewise. + * testsuite/ld-ctf/cycle-2.B.d: Likewise. + * testsuite/ld-ctf/cycle-2.C.d: Likewise. + * testsuite/ld-ctf/diag-wrong-magic-number-mixed.d: Likewise. + * testsuite/ld-ctf/super-sub-cycles.d: Likewise. + * testsuite/ld-ctf/data-func-1.c: New test. + * testsuite/ld-ctf/data-func-2.c: Likewise. + * testsuite/ld-ctf/data-func-conflicted.d: Likewise. + +2020-11-20 Nick Alcock + + * ldelfgen.c (struct ctf_strsym_iter_cb_arg): Rename to... + (struct ctf_strtab_iter_cb_arg): ... this, changing fields: + : Remove. + : Remove. + : Rename to... + : ... this. + (ldelf_ctf_strtab_iter_cb): Adjust. + (ldelf_ctf_symbols_iter_cb): Remove. + (ldelf_new_dynsym_for_ctf): New, tell libctf about a single + symbol. + (ldelf_examine_strtab_for_ctf): Rename to... + (ldelf_acquire_strings_for_ctf): ... this, only doing the strtab + portion and not symbols. + * ldelfgen.h: Adjust declarations accordingly. + * ldemul.c (ldemul_examine_strtab_for_ctf): Rename to... + (ldemul_acquire_strings_for_ctf): ... this. + (ldemul_new_dynsym_for_ctf): New. + * ldemul.h: Adjust declarations accordingly. + * ldlang.c (ldlang_ctf_apply_strsym): Rename to... + (ldlang_ctf_acquire_strings): ... this. + (ldlang_ctf_new_dynsym): New. + (lang_write_ctf): Call ldemul_new_dynsym_for_ctf with NULL to do + the actual symbol shuffle. + * ldlang.h (struct elf_strtab_hash): Adjust accordingly. + * ldmain.c (bfd_link_callbacks): Wire up new/renamed callbacks. + + * emultempl/aix.em: Adjust for emulation changes: + ldemul_examine_strtab_for_ctf renamed to + ldemul_acquire_strings_for_ctf, new ldemul_new_dynsym_for_ctf. + * emultempl/armcoff.em: Likewise. + * emultempl/beos.em: Likewise. + * emultempl/elf.em: Likewise. + * emultempl/elf-generic.em: Likewise. + * emultempl/linux.em: Likewise. + * emultempl/msp430.em: Likewise. + * emultempl/pe.em: Likewise. + * emultempl/pep.em: Likewise. + * emultempl/ticoff.em: Likewise. + * emultempl/vanilla.em: Likewise. + +2020-11-20 Nick Alcock + + * ldlang.c (ctf_output): This is a ctf_dict_t now. + (lang_ctf_errs_warnings): Rename ctf_file_t to ctf_dict_t. + (ldlang_open_ctf): Adjust comment. + (lang_merge_ctf): Use ctf_dict_close, not ctf_file_close. + * ldelfgen.h (ldelf_examine_strtab_for_ctf): Rename ctf_file_t to + ctf_dict_t. Change opaque declaration accordingly. + * ldelfgen.c (ldelf_examine_strtab_for_ctf): Adjust. + * ldemul.h (examine_strtab_for_ctf): Likewise. + (ldemul_examine_strtab_for_ctf): Likewise. + * ldeuml.c (ldemul_examine_strtab_for_ctf): Likewise. + +2020-11-20 Jozef Lawrynowicz + + * testsuite/ld-elf/retain3.s: Move symbolic reference into writeable + .data section from read-only .text section. + * testsuite/ld-elf/retain5.d: Don't pass --print-gc-sections for test + that doesn't require it. + * testsuite/ld-elf/retain6a.d: Adjust test. + * testsuite/ld-elf/retain6main.s: Move symbolic reference into writeable + .data section from read-only .text section. + +2020-11-18 Alan Modra + + * testsuite/ld-powerpc/group1.d, + * testsuite/ld-powerpc/group1.s, + * testsuite/ld-powerpc/group1.sym, + * testsuite/ld-powerpc/group2.d, + * testsuite/ld-powerpc/group2.s, + * testsuite/ld-powerpc/group2.sym, + * testsuite/ld-powerpc/group3.s, + * testsuite/ld-powerpc/group3.sym: New test files. + * testsuite/ld-powerpc/powerpc.exp: Run new tests. + +2020-11-18 Jozef Lawrynowicz + + * NEWS: Announce support for SHF_GNU_RETAIN. + * ld.texi (garbage collection): Document SHF_GNU_RETAIN. + (Output Section Discarding): Likewise. + * testsuite/ld-elf/elf.exp: Run new tests. + * testsuite/ld-elf/retain1.s: New test. + * testsuite/ld-elf/retain1a.d: New test. + * testsuite/ld-elf/retain1b.d: New test. + * testsuite/ld-elf/retain2.d: New test. + * testsuite/ld-elf/retain2.ld: New test. + * testsuite/ld-elf/retain2.map: New test. + * testsuite/ld-elf/retain3.d: New test. + * testsuite/ld-elf/retain3.s: New test. + * testsuite/ld-elf/retain4.d: New test. + * testsuite/ld-elf/retain4.s: New test. + * testsuite/ld-elf/retain5.d: New test. + * testsuite/ld-elf/retain5.map: New test. + * testsuite/ld-elf/retain5lib.s: New test. + * testsuite/ld-elf/retain5main.s: New test. + * testsuite/ld-elf/retain6a.d: New test. + * testsuite/ld-elf/retain6b.d: New test. + * testsuite/ld-elf/retain6lib.s: New test. + * testsuite/ld-elf/retain6main.s: New test. + +2020-11-17 Alan Modra + + PR 26882 + * testsuite/ld-powerpc/dotsym3.d: Add "-z notext" to ld options. + * testsuite/ld-powerpc/dotsym4.d: Likewise. + * testsuite/ld-powerpc/ppc476-shared.d: Likewise. + * testsuite/ld-powerpc/ppc476-shared2.d: Likewise. + * testsuite/ld-powerpc/powerpc.exp: Likewise for various tests. + * testsuite/ld-undefined/weak-fundef.s: Add BLPLT variant. + * testsuite/ld-undefined/weak-undef.exp: Define BLPLT for ppc32. + +2020-11-16 Nick Clifton + + * po/es.po: Updated Spanish translation. + +2020-11-16 Shahab Vahedi + + * testsuite/ld-arc/tls_ie-01.d: Update the dump command. + +2020-11-14 Borislav Petkov + + * testsuite/ld-x86-64/pe-x86-64-4.od: Adjust regexes. + * testsuite/ld-x86-64/tlsld3.dd: Likewise. + * testsuite/ld-x86-64/tlsld4.dd: Likewise. + +2020-11-13 H.J. Lu + + PR ld/26869 + * ldelf.c (ldelf_before_allocation): Set rel_from_abs to 1 for + __ehdr_start. + * testsuite/ld-i386/i386.exp: Run pr26869. + * testsuite/ld-i386/pr26869.d: New file. + * testsuite/ld-i386/pr26869.s: Likewise. + +2020-11-09 Andreas Schwab + + * Makefile.am (development.exp): Fix regexp. + * Makefile.in: Regenerate. + +2020-11-06 Nick Clifton + + * lexsup.c (parse_args): Add more checks of the mapfile. If it is + a directory use the basename of the output file as the file + component. If the % character is present, replace it with the + full output filepath. + * testsuite/ld-scripts/map-address.exp: Add test of % + functionality. + * ld.texi: Document the new behaviour. + +2020-11-06 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-11-03 Nick Clifton + + * emulparams/x86-64-level.sh + (PARSE_AND_LIST_ARGS_CASE_Z_X86_64_LEVEL): Fix indentation. + +2020-11-02 Alan Modra + + PR 26806 + * testsuite/ld-plugin/lto-19.h, + * testsuite/ld-plugin/lto-19a.c, + * testsuite/ld-plugin/lto-19b.c, + * testsuite/ld-plugin/lto-19c.c: New test. + * testsuite/ld-plugin/pr26806.c, + * testsuite/ld-plugin/pr26806.d: New test. + * testsuite/ld-plugin/lto.exp: Run them. + +2020-10-30 H.J. Lu + + PR gas/26703 + * NEWS: Mention -z x86-64-baseline. + * ld.texi: Document -z x86-64-baseline. + * emulparams/x86-64-level.sh: Handle -z x86-64-baseline. + * testsuite/ld-elf/x86-feature-1a.rd: Update. + * testsuite/ld-elf/x86-feature-1b.rd: Likewise. + * testsuite/ld-elf/x86-feature-1c.rd: Likewise. + * testsuite/ld-elf/x86-feature-1d.rd: Likewise. + * testsuite/ld-elf/x86-feature-1e.rd: Likewise. + * testsuite/ld-i386/pr23372c.d: Likewise. + * testsuite/ld-i386/pr23486c.d: Likewise. + * testsuite/ld-i386/pr23486d.d: Likewise. + * testsuite/ld-i386/pr24322a.d: Likewise. + * testsuite/ld-i386/pr24322b.d: Likewise. + * testsuite/ld-i386/property-1a.r: Likewise. + * testsuite/ld-i386/property-2a.r: Likewise. + * testsuite/ld-i386/property-3.r: Likewise. + * testsuite/ld-i386/property-3a.r: Likewise. + * testsuite/ld-i386/property-4.r: Likewise. + * testsuite/ld-i386/property-4a.r: Likewise. + * testsuite/ld-i386/property-5.r: Likewise. + * testsuite/ld-i386/property-5a.r: Likewise. + * testsuite/ld-i386/property-7a.r: Likewise. + * testsuite/ld-i386/property-x86-3.d: Likewise. + * testsuite/ld-i386/property-x86-4a.d: Likewise. + * testsuite/ld-i386/property-x86-5.d: Likewise. + * testsuite/ld-i386/property-x86-cet1.d: Likewise. + * testsuite/ld-i386/property-x86-cet2a.d: Likewise. + * testsuite/ld-i386/property-x86-cet5a.d: Likewise. + * testsuite/ld-i386/property-x86-cet5b.d: Likewise. + * testsuite/ld-i386/property-x86-ibt1a.d: Likewise. + * testsuite/ld-i386/property-x86-ibt1b.d: Likewise. + * testsuite/ld-i386/property-x86-ibt2.d: Likewise. + * testsuite/ld-i386/property-x86-ibt3a.d: Likewise. + * testsuite/ld-i386/property-x86-ibt3b.d: Likewise. + * testsuite/ld-i386/property-x86-ibt4.d: Likewise. + * testsuite/ld-i386/property-x86-ibt5.d: Likewise. + * testsuite/ld-i386/property-x86-isa1.d: Likewise. + * testsuite/ld-i386/property-x86-isa2.d: Likewise. + * testsuite/ld-i386/property-x86-isa3.d: Likewise. + * testsuite/ld-i386/property-x86-shstk1a.d: Likewise. + * testsuite/ld-i386/property-x86-shstk1b.d: Likewise. + * testsuite/ld-i386/property-x86-shstk2.d: Likewise. + * testsuite/ld-i386/property-x86-shstk3a.d: Likewise. + * testsuite/ld-i386/property-x86-shstk3b.d: Likewise. + * testsuite/ld-i386/property-x86-shstk4.d: Likewise. + * testsuite/ld-i386/property-x86-shstk5.d: Likewise. + * testsuite/ld-x86-64/pr23372c-x32.d: Likewise. + * testsuite/ld-x86-64/pr23372c.d: Likewise. + * testsuite/ld-x86-64/pr23486c-x32.d: Likewise. + * testsuite/ld-x86-64/pr23486c.d: Likewise. + * testsuite/ld-x86-64/pr23486d-x32.d: Likewise. + * testsuite/ld-x86-64/pr23486d.d: Likewise. + * testsuite/ld-x86-64/pr24322a-x32.d: Likewise. + * testsuite/ld-x86-64/pr24322a.d: Likewise. + * testsuite/ld-x86-64/pr24322b-x32.d: Likewise. + * testsuite/ld-x86-64/pr24322b.d: Likewise. + * testsuite/ld-x86-64/pr24458a-x32.d: Likewise. + * testsuite/ld-x86-64/pr24458a.d: Likewise. + * testsuite/ld-x86-64/pr24458b-x32.d: Likewise. + * testsuite/ld-x86-64/pr24458b.d: Likewise. + * testsuite/ld-x86-64/pr24458c-x32.d: Likewise. + * testsuite/ld-x86-64/pr24458c.d: Likewise. + * testsuite/ld-x86-64/property-1a.r: Likewise. + * testsuite/ld-x86-64/property-2a.r: Likewise. + * testsuite/ld-x86-64/property-3.r: Likewise. + * testsuite/ld-x86-64/property-3a.r: Likewise. + * testsuite/ld-x86-64/property-4.r: Likewise. + * testsuite/ld-x86-64/property-4a.r: Likewise. + * testsuite/ld-x86-64/property-5.r: Likewise. + * testsuite/ld-x86-64/property-5a.r: Likewise. + * testsuite/ld-x86-64/property-7a.r: Likewise. + * testsuite/ld-x86-64/property-x86-3-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-3.d: Likewise. + * testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-4a.d: Likewise. + * testsuite/ld-x86-64/property-x86-5-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-5.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet1-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet1.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet2a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet2a.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet5a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet5a.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet5b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet5b.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt2.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt4.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa1-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa1.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa2-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa2.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa3-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa3.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt5.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk2.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk4.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk5.d: Likewise. + * testsuite/ld-i386/i386.exp: Run property-x86-isa4. + * testsuite/ld-i386/property-x86-isa4.d: New file. + * testsuite/ld-x86-64/property-x86-isa4-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa4.d: Likewise. + * ld/testsuite/ld-x86-64/x86-64.exp: Run property-x86-isa4 + and property-x86-isa4-x32. + +2020-10-26 H.J. Lu + + * testsuite/ld-elfweak/elfweak.exp: Pass $NOLTO_CFLAGS to CC. + +2020-10-26 Nick Clifton + + PR 26626 + * ldmain.c (undefined_symbol): Use the keyword undefined-symbol + when invoking the error handling script for undefined symbols. + * ld.texi: Update documentation. + +2020-10-26 Cooper Qu + + * emulparams/cskyelf.sh (TEXT_START_ADDR): Change to 0x60000000. + (DATA_ADDR) : Define. + (OTHER_SYMBOLS) : Define. + (OTHER_BSS_SYMBOLS) : Set symbol __sbss__. + (OTHER_BSS_END_SYMBOLS) : Set symbol __ebss__. + * ld/emulparams/cskyelf_linux.sh : Don't include cskyelf.sh. + * testsuite/ld-csky/data.d : Fix '/s*' to match spaces. + * testsuite/ld-csky/hilo16.d : Likewise. + +2020-10-23 H.J. Lu + + * testsuite/config/default.exp (plug_opt): Set only if compiler + is available. + +2020-10-22 H.J. Lu + + * testsuite/ld-plugin/lto.exp (plug_opt): Moved to ... + * testsuite/config/default.exp (plug_opt): Here. New. + * testsuite/ld-bootstrap/bootstrap.exp: Skip when linker is + compiled with -fprofile-generate=. + +2020-10-22 H.J. Lu + + * testsuite/config/default.exp (NOLTO_CFLAGS): New. + * ld/testsuite/ld-elfcomm/elfcomm.exp: Add $NOLTO_CFLAGS to CC. + * testsuite/ld-elfvers/vers.exp: Likewise. + * testsuite/ld-elfvsb/elfvsb.exp: Likewise. + * testsuite/ld-gc/gc.exp: Likewise. + * testsuite/ld-plugin/plugin.exp: Likewise. + * testsuite/ld-scripts/crossref.exp: Likewise. + * testsuite/ld-selective/selective.exp: Likewise. + * testsuite/ld-undefined/undefined.exp: Likewise. + * testsuite/ld-srec/srec.exp: Add $NOLTO_CFLAGS to CC. Override + CXXFLAGS. + * testsuite/lib/ld-lib.exp (run_ld_link_tests): Prepend -fno-lto + to cflags. + +2020-10-19 Alan Modra + + * testsuite/config/default.exp: Provide dummy libraries for + alpha-dec-vms. + (compiler_supports): New proc. Use it for compiler tests. + * testsuite/lib/ld-lib.exp (default_ld_assemble): Don't die if + subdir not set. + (run_ld_link_tests): Pass LDFLAGS to ld. + * testsuite/ld-checks/checks.exp (section_check): Likewise. + * testsuite/ld-scripts/assert.exp: Likewise. + * testsuite/ld-scripts/extern.exp: Likewise. + * testsuite/ld-scripts/log2.exp: Likewise. + * testsuite/ld-scripts/map-address.exp: Likewise. + * testsuite/ld-scripts/script.exp: Likewise. + * testsuite/ld-scripts/sizeof.exp: Likewise. + +2020-10-16 Andrew Burgess + + * ldlang.c (lang_process): Add extra call to + lang_do_memory_regions, and pass parameter. + (lang_do_memory_regions): Add parameter, only define origin and + length when requested. Reindent. + * testsuite/ld-scripts/provide-10.d: New file. + * testsuite/ld-scripts/provide-10.map: New file. + * testsuite/ld-scripts/provide-11.d: New file. + * testsuite/ld-scripts/provide-11.map: New file. + * testsuite/ld-scripts/provide-12.d: New file. + * testsuite/ld-scripts/provide-12.map: New file. + * testsuite/ld-scripts/provide-9.d: New file. + * testsuite/ld-scripts/provide-9.map: New file. + * testsuite/ld-scripts/provide-9.t: New file. + +2020-10-16 Andrew Burgess + + * ld.texi (Options): Extend the description of --defsym. + +2020-10-16 Nick Clifton + + PR 26626 + * ldmain.c (undefined_symbol): If an error handlign script is + available, call it. + * ldfile.c (error_handling_script): Declare. + (ldfile_open_file): If a library cannot be found and an error + handling script is available, call it. + * ldmain.h (error_handling_script): Prototype. + * ldlex.h (OPTION_ERROR_HANDLING_SCRIPT): Define. + * lexsup.c (ld_options): Add --error-handling-script. + (parse_args): Add support for --errror-handling-script. + * ld.texi: Document the new feature. + * configure.ac: Add --error-handling-script option to disable + support for the new feature. + * NEWS: Mention the new feature. + * config.in: Regenerate. + * configure: Regenerate. + +2020-10-16 Nelson Chu + + * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite.s: New testcase. + * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite-exe.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite-pic.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-got-overwrite-pie.rd: Likewise. + * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Updated. + +2020-10-16 Nelson Chu + + * emulparams/elf32lriscv-defs.sh: Add IREL_IN_PLT. + * testsuite/ld-ifunc/ifunc.exp: Enable ifunc tests for RISC-V. + * testsuite/ld-riscv-elf/ld-riscv-elf.exp (run_dump_test_ifunc): + New dump test for ifunc. There are two arguments, 'target` and + `output`. The `target` is rv32 or rv64, and the `output` is used + to choose which output you want to test (exe, pie or .so). + * testsuite/ld-riscv-elf/ifunc-reloc-call-01.s: New testcase. + * testsuite/ld-riscv-elf/ifunc-reloc-call-01.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-call-01-exe.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-call-01-pic.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-call-01-pie.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-call-02.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-call-02.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-call-02-exe.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-call-02-pic.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-call-02-pie.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-data.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-data.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-data-exe.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-data-pic.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-data-pie.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-got.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-got.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-got-exe.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-got-pic.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-got-pie.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-pcrel.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-pcrel.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-pcrel-exe.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-pcrel-pic.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-reloc-pcrel-pie.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-nonplt.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-nonplt.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-nonplt-exe.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-nonplt-pic.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-nonplt-pie.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-01.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-01.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-01-exe.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-01-pic.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-01-pie.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-02.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-02.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-02-exe.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-02-pic.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-plt-02-pie.rd: Likewise. + * testsuite/ld-riscv-elf/ifunc-seperate-resolver.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-seperate-caller.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-seperate-exe.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-seperate-pic.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-seperate-pie.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-seperate-caller-pcrel.s: Likewise. + * testsuite/ld-riscv-elf/ifunc-seperate-pcrel-pic.d: Likewise. + * testsuite/ld-riscv-elf/ifunc-seperate-pcrel-pie.d: Likewise. + +2020-10-09 H.J. Lu + + PR gas/26703 + * NEWS: Mention -z x86-64-v[234]. + * ld.texi: Document -z x86-64-v[234]. + * emulparams/elf32_x86_64.sh: Use x86-64-level.sh. + * emulparams/elf_i386.sh: Likewise. + * emulparams/elf_x86_64.sh: Likewise. + * emulparams/x86-64-level.sh: New file. + * testsuite/ld-elf/x86-feature-1a.rd: Update. + * testsuite/ld-elf/x86-feature-1b.rd: Likewise. + * testsuite/ld-elf/x86-feature-1c.rd: Likewise. + * testsuite/ld-elf/x86-feature-1d.rd: Likewise. + * testsuite/ld-elf/x86-feature-1e.rd: Likewise. + * testsuite/ld-i386/pr23372c.d: Likewise. + * testsuite/ld-i386/pr23486c.d: Likewise. + * testsuite/ld-i386/pr23486d.d: Likewise. + * testsuite/ld-i386/pr24322a.d: Likewise. + * testsuite/ld-i386/pr24322b.d: Likewise. + * testsuite/ld-i386/property-1a.r: Likewise. + * testsuite/ld-i386/property-2a.r: Likewise. + * testsuite/ld-i386/property-3.r: Likewise. + * testsuite/ld-i386/property-3a.r: Likewise. + * testsuite/ld-i386/property-4.r: Likewise. + * testsuite/ld-i386/property-4a.r: Likewise. + * testsuite/ld-i386/property-5.r: Likewise. + * testsuite/ld-i386/property-5a.r: Likewise. + * testsuite/ld-i386/property-7a.r: Likewise. + * testsuite/ld-i386/property-x86-3.d: Likewise. + * testsuite/ld-i386/property-x86-4a.d: Likewise. + * testsuite/ld-i386/property-x86-5.d: Likewise. + * testsuite/ld-i386/property-x86-cet1.d: Likewise. + * testsuite/ld-i386/property-x86-cet2a.d: Likewise. + * testsuite/ld-i386/property-x86-cet5a.d: Likewise. + * testsuite/ld-i386/property-x86-cet5b.d: Likewise. + * testsuite/ld-i386/property-x86-ibt1a.d: Likewise. + * testsuite/ld-i386/property-x86-ibt1b.d: Likewise. + * testsuite/ld-i386/property-x86-ibt2.d: Likewise. + * testsuite/ld-i386/property-x86-ibt3a.d: Likewise. + * testsuite/ld-i386/property-x86-ibt3b.d: Likewise. + * testsuite/ld-i386/property-x86-ibt4.d: Likewise. + * testsuite/ld-i386/property-x86-ibt5.d: Likewise. + * testsuite/ld-i386/property-x86-shstk1a.d: Likewise. + * testsuite/ld-i386/property-x86-shstk1b.d: Likewise. + * testsuite/ld-i386/property-x86-shstk2.d: Likewise. + * testsuite/ld-i386/property-x86-shstk3a.d: Likewise. + * testsuite/ld-i386/property-x86-shstk3b.d: Likewise. + * testsuite/ld-i386/property-x86-shstk4.d: Likewise. + * testsuite/ld-i386/property-x86-shstk5.d: Likewise. + * testsuite/ld-x86-64/pr23372c-x32.d: Likewise. + * testsuite/ld-x86-64/pr23372c.d: Likewise. + * testsuite/ld-x86-64/pr23486c.d: Likewise. + * testsuite/ld-x86-64/pr23486d-x32.d: Likewise. + * testsuite/ld-x86-64/pr23486d.d: Likewise. + * testsuite/ld-x86-64/pr24322a-x32.d: Likewise. + * testsuite/ld-x86-64/pr24322a.d: Likewise. + * testsuite/ld-x86-64/pr24322b-x32.d: Likewise. + * testsuite/ld-x86-64/pr24322b.d: Likewise. + * testsuite/ld-x86-64/pr24458a-x32.d: Likewise. + * testsuite/ld-x86-64/pr24458a.d: Likewise. + * testsuite/ld-x86-64/pr24458b-x32.d: Likewise. + * testsuite/ld-x86-64/pr24458b.d: Likewise. + * testsuite/ld-x86-64/pr24458c-x32.d: Likewise. + * testsuite/ld-x86-64/pr24458c.d: Likewise. + * testsuite/ld-x86-64/property-1a.r: Likewise. + * testsuite/ld-x86-64/property-2a.r: Likewise. + * testsuite/ld-x86-64/property-3.r: Likewise. + * testsuite/ld-x86-64/property-3a.r: Likewise. + * testsuite/ld-x86-64/property-4.r: Likewise. + * testsuite/ld-x86-64/property-4a.r: Likewise. + * testsuite/ld-x86-64/property-5.r: Likewise. + * testsuite/ld-x86-64/property-5a.r: Likewise. + * testsuite/ld-x86-64/property-7a.r: Likewise. + * testsuite/ld-x86-64/property-x86-3-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-3.d: Likewise. + * testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-4a.d: Likewise. + * testsuite/ld-x86-64/property-x86-5-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-5.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet1-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet1.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet2a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet2a.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet5a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet5a.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet5b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-cet5b.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt2.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt4.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt5.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk2.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk4.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk5.d: Likewise. + * testsuite/ld-i386/i386.exp: Run property-x86-6, + property-x86-isa1, property-x86-isa2 and property-x86-isa3. + * testsuite/ld-i386/property-x86-1.S: Updated to the current + GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED + values. + * testsuite/ld-i386/property-x86-2.S: Likewise. + * testsuite/ld-i386/property-x86-3.s: Likewise. + * testsuite/ld-x86-64/pr23372d.s: Likewise. + * testsuite/ld-x86-64/pr23372e.s: Likewise. + * testsuite/ld-x86-64/pr23372f.s: Likewise. + * testsuite/ld-x86-64/pr23486c.s: Likewise. + * testsuite/ld-x86-64/pr23486d.s: Likewise. + * testsuite/ld-x86-64/property-x86-1.S: Likewise. + * testsuite/ld-x86-64/property-x86-2.S: Likewise. + * testsuite/ld-x86-64/property-x86-3.s: Likewise. + * testsuite/ld-x86-64/property-x86-5a.s: Likewise. + * testsuite/ld-x86-64/property-x86-5b.s: Likewise. + * testsuite/ld-i386/property-x86-6.d: New file. + * testsuite/ld-i386/property-x86-isa1.d: Likewise. + * testsuite/ld-i386/property-x86-isa2.d: Likewise. + * testsuite/ld-i386/property-x86-isa3.d: Likewise. + * testsuite/ld-x86-64/property-x86-6-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-6.d: Likewise. + * testsuite/ld-x86-64/property-x86-6.s: Likewise. + * testsuite/ld-x86-64/property-x86-isa1-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa1.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa1.s: Likewise. + * testsuite/ld-x86-64/property-x86-isa2-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa2.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa3-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-isa3.d: Likewise. + * testsuite/ld-x86-64/simple.s: Likewise. + * ld/testsuite/ld-x86-64/x86-64.exp: Run property-x86-6, + property-x86-6-x32, property-x86-isa1, property-x86-isa1-x32, + property-x86-isa2, property-x86-isa2-x32, property-x86-isa3-x32 + and property-x86-isa3. + +2020-10-06 H.J. Lu + + * testsuite/ld-i386/property-3.r: Updated for Fedora binary + annotation plugin for GCC. + * testsuite/ld-i386/property-4.r: Likewise. + * testsuite/ld-i386/property-5.r: Likewise. + * testsuite/ld-x86-64/property-3.r: Likewise. + * testsuite/ld-x86-64/property-4.r: Likewise. + * testsuite/ld-x86-64/property-5.r: Likewise. + +2020-10-06 H.J. Lu + + PR ld/26711 + * testsuite/ld-i386/i386.exp: Run ld/26711 tests. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr26711-1.d: Likewise. + * testsuite/ld-i386/pr26711-2.d: Likewise. + * testsuite/ld-i386/pr26711-3.d: Likewise. + * testsuite/ld-x86-64/pr26711-1-x32.d: Likewise. + * testsuite/ld-x86-64/pr26711-1.d: Likewise. + * testsuite/ld-x86-64/pr26711-2-x32.d: Likewise. + * testsuite/ld-x86-64/pr26711-2.d: Likewise. + * testsuite/ld-x86-64/pr26711-3-x32.d: Likewise. + * testsuite/ld-x86-64/pr26711-3.d: Likewise. + * testsuite/ld-x86-64/pr26711.s: Likewise. + +2020-10-06 Brandon Bergren + + * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64lppc_fbsd.c. + Include $(DEPDIR)/eelf64lppc_fbsd.Pc. + * configure.tgt: Add powerpc64le-*-freebsd*. + * emulparams/elf64lppc_fbsd.sh: New file. + * Makefile.in: Regenerate. + * po/BLD-POTFILES.in: Regenerate. + +2020-10-05 T.K. Chia + + PR gas/26694 + * testsuite/ld-i386/ljmp.s, + * testsuite/ld-i386/ljmp1.d, + * testsuite/ld-i386/ljmp1.s, + * testsuite/ld-i386/ljmp2.d, + * testsuite/ld-i386/ljmp2.s, + * testsuite/ld-x86-64/ljmp1.d, + * testsuite/ld-x86-64/ljmp2.d: New testcases. + * testsuite/ld-i386/i386.exp, + * testsuite/ld-x86-64/x86-64.exp: Run them. + +2020-10-05 Nick Clifton + + * lexsup.c (parse_args): Generate an error or warning message when + multiple short options are used together. + +2020-10-01 H.J. Lu + + PR 26681 + * testsuite/ld-elf/pr26681.s: New test. + * testsuite/ld-elf/pr26681.d: New test driver. + * testsuite/ld-elf/pr26681.l: New test output. + +2020-09-30 H.J. Lu + + PR ld/26675 + * plugin.c (plugin_notice): Override the IR definition before + all LTO symbols have been read for non-ELF targets. + +2020-09-30 Jeremy Drake + + PR 26588 + * emultempl/pe.em (_finish): Generate an import library for DLLs, + even if they have no exports. + * emultempl/pep.em (_finish): Likewise. + +2020-09-28 Alan Modra + + * testsuite/ld-powerpc/tlsget.d, + * testsuite/ld-powerpc/tlsget.s, + * testsuite/ld-powerpc/tlsget.wf, + * testsuite/ld-powerpc/tlsget2.d. + * testsuite/ld-powerpc/tlsget2.wf: New testcases. + * testsuite/ld-powerpc/powerpc.exp: Run them. + +2020-09-26 Alan Modra + + * testsuite/ld-powerpc/elfv2so.d, + * testsuite/ld-powerpc/notoc2.d, + * testsuite/ld-powerpc/tlsdesc.wf, + * testsuite/ld-powerpc/tlsdesc2.d, + * testsuite/ld-powerpc/tlsdesc2.wf, + * testsuite/ld-powerpc/tlsopt5.d, + * testsuite/ld-powerpc/tlsopt5.wf, + * testsuite/ld-powerpc/tlsopt6.d, + * testsuite/ld-powerpc/tlsopt6.wf: Update __glink_PLTresolve. + +2020-09-24 Alan Modra + + PR 26655 + * emultempl/ppc64elf.em (params): Add ppc_edit. + (ppc_before_allocation): Split off some edit functions to.. + (ppc_edit): ..this, new function. + +2020-09-22 Frediano Ziglio + + * emultempl/pe.em (set_entry_point): Only use the DLL entry point + for DLLs. + * emultempl/pep.em (set_entry_point): Likewise. + +2020-09-16 Mikael Pettersson + + * testsuite/ld-elf/shared.exp: Add -Av9 to AFLAGS_PIE on sparc. + * testsuite/ld-elf/tls.exp: Add -Av9 to AFLAGS_PIC on sparc. + +2020-09-16 H.J. Lu + + PR ld/26583 + * testsuite/ld-x86-64/pe-x86-64-1.od: New file. + * testsuite/ld-x86-64/pe-x86-64-1a.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-1b.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-1c.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-2.od: Likewise. + * testsuite/ld-x86-64/pe-x86-64-2a.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-2b.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-2c.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-3.od: Likewise. + * testsuite/ld-x86-64/pe-x86-64-3a.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-3b.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-3c.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-3d.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-4.od: Likewise. + * testsuite/ld-x86-64/pe-x86-64-4a.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-4b.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-4c.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64-4d.obj.bz2: Likewise. + * testsuite/ld-x86-64/pe-x86-64.exp: Likewise. + * testsuite/lib/ld-lib.exp (run_ld_link_tests): Handle bz2 binary + inputs. + +2020-09-16 Alan Modra + + * plugin.c (asymbol_from_plugin_symbol): Adjust elf_symbol_from + invocation. + +2020-09-15 H.J. Lu + + * ldelf.c (ldelf_after_open): Check bfd_target_elf_flavour first. + +2020-09-15 Hans-Peter Nilsson + + PR ld/26589 + * testsuite/ld-elf/pr26589.d, testsuite/ld-elf/locref3.s: New test. + +2020-09-13 Alan Modra + + PR 26391 + * testsuite/ld-elf/pr26391.nd: Adjust to match powerpc64 function + descriptors. + +2020-09-12 H.J. Lu + + PR ld/26391 + * NEWS: Mention "-z unique-symbol". + * emultempl/elf.em (gld${EMULATION_NAME}_handle_option): Handle + "-z unique-symbol" and "-z nounique-symbol". + * ld.texi: Document "-z unique-symbol" and "-z nounique-symbol". + * lexsup.c (elf_static_list_options): Add "-z unique-symbol" and + "-z nounique-symbol". + * testsuite/ld-elf/elf.exp: Add PR ld/26391 tests. + * testsuite/ld-elf/pr26391.nd: New file. + * testsuite/ld-elf/pr26391.out: Likewise. + * testsuite/ld-elf/pr26391a.c: Likewise. + * testsuite/ld-elf/pr26391b.c: Likewise. + * testsuite/ld-elf/pr26391c.c: Likewise. + * testsuite/ld-elf/pr26391d.c: Likewise. + +2020-09-11 Jeremy Drake + + PR 26588 + * emultempl/pe.em (_finish): Only generate a import library if not + exporting relocs. + * emultempl/pep.em: Likewise. + +2020-09-10 Siddhesh Poyarekar + + * testsuite/ld-aarch64/emit-relocs-560.d: Expect error instead + of valid output. + +2020-09-10 H.J. Lu + + PR ld/26590 + * testsuite/ld-elf/pr26590.err: New file. + * testsuite/ld-elf/pr26590a.c: Likewise. + * testsuite/ld-elf/pr26590b.c: Likewise. + * testsuite/ld-elf/pr26590c.c: Likewise. + * testsuite/ld-elf/pr26590d.c: Likewise. + * testsuite/ld-elf/shared.exp: Run ld/26590 tests. + +2020-09-10 Alan Modra + + * testsuite/ld-elf/pr26580-2.sd: Accept undefined symbol. + +2020-09-10 Alan Modra + + * testsuite/ld-plugin/lto-18b.c (select): Remove. + * testsuite/ld-plugin/lto-18c.c (select): Remove. + * testsuite/ld-plugin/lto.exp: Build archives for lto-18 too, + and run static versions of the test. + +2020-09-09 Alan Modra + + * testsuite/ld-plugin/lto-18a.c, + * testsuite/ld-plugin/lto-18b.c, + * testsuite/ld-plugin/lto-18c.c, + * testsuite/ld-plugin/lto-18d.c, + * testsuite/ld-plugin/lto-18.out: New test. + * testsuite/ld-plugin/lto.exp: Run it. + +2020-09-08 Jozef Lawrynowicz + + * testsuite/ld-msp430-elf/msp430-elf.exp: Run new tests. + * testsuite/ld-msp430-elf/uleb128.s: New test. + * testsuite/ld-msp430-elf/uleb128_430.d: New test. + * testsuite/ld-msp430-elf/uleb128_430x.d: New test. + +2020-09-08 Alan Modra + + * testsuite/ld-elf/pr26580-a.s, + * testsuite/ld-elf/pr26580-b.s, + * testsuite/ld-elf/pr26580-1.sd, + * testsuite/ld-elf/pr26580-2.sd: New tests + * testsuite/ld-elf/comm-data.exp: Run new tests. + * testsuite/ld-elf/pr26580-a.c, + * testsuite/ld-elf/pr26580-b.c, + * testsuite/ld-elf/pr26580-3.out, + * testsuite/ld-elf/pr26580-4.out: New tests. + * testsuite/ld-elf/shared.exp: Run new tests. + +2020-09-04 Alan Modra + + * testsuite/ld-plugin/lto.exp: Don't run pr15146 tests. + * testsuite/ld-plugin/pr15146.d: Delete. + * testsuite/ld-plugin/pr15146a.c: Delete. + * testsuite/ld-plugin/pr15146b.c: Delete. + * testsuite/ld-plugin/pr15146c.c: Delete. + * testsuite/ld-plugin/pr15146d.c: Delete. + +2020-09-03 H.J. Lu + + * testsuite/config/default.exp: Change NOSANTIZE_CFLAGS to + NOSANITIZE_CFLAGS. + * testsuite/ld-elf/dwarf.exp: Likewise. + * testsuite/ld-elf/indirect.exp: Likewise. + * testsuite/ld-elf/linux-x86.exp: Likewise. + * testsuite/ld-elf/shared.exp: Likewise. + * testsuite/ld-elf/tls.exp: Likewise. + * testsuite/ld-elfcomm/elfcomm.exp: Likewise. + * testsuite/ld-elfvers/vers.exp: Likewise. + * testsuite/ld-elfvsb/elfvsb.exp: Likewise. + * testsuite/ld-elfweak/elfweak.exp: Likewise. + * testsuite/ld-gc/gc.exp: Likewise. + * testsuite/ld-plugin/lto.exp: Likewise. + * testsuite/ld-plugin/plugin.exp: Likewise. + * testsuite/ld-scripts/crossref.exp: Likewise. + * testsuite/ld-selective/selective.exp: Likewise. + * testsuite/ld-shared/shared.exp: Likewise. + * testsuite/ld-size/size.exp: Likewise. + * testsuite/ld-srec/srec.exp: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + +2020-09-03 Nelson Chu + + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-01.d: Remove + the useless `warnings` keywords. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-02.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-03.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-04.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-05.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-06.d: Likewise. + +2020-09-03 Nelson Chu + + * testsuite/ld-riscv-elf/attr-merge-arch-failed-01.d: Update the + message from error to warning. + * testsuite/ld-riscv-elf/attr-merge-arch-failed-02.d: New testcases. + * testsuite/ld-riscv-elf/attr-merge-arch-failed-02a.s: Likewise. + * testsuite/ld-riscv-elf/attr-merge-arch-failed-02b.s: Likewise. + * testsuite/ld-riscv-elf/attr-merge-arch-failed-02c.s: Likewise. + * testsuite/ld-riscv-elf/attr-merge-arch-failed-02d.s: Likewise. + * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Updated. + +2020-09-03 Kito Cheng + + * testsuite/ld-riscv-elf/attr-merge-arch-failed-01.d: Updated. + * testsuite/ld-riscv-elf/attr-merge-arch-failed-01a.s: Likewise. + * testsuite/ld-riscv-elf/attr-merge-arch-failed-01b.s: Likewise. + +2020-09-03 Alan Modra + + * testsuite/ld-scripts/sysroot-prefix.exp (single_sysroot_prefix_test): + Log $scriptname. + +2020-08-30 H.J. Lu + + * testsuite/ld-elf/dwarf.exp: Append $NOSANTIZE_CFLAGS to CFLAGS. + * testsuite/ld-elf/shared.exp: Likewise. + * testsuite/ld-elfvsb/elfvsb.exp: Likewise. + * testsuite/ld-shared/shared.exp: Likewise. + * testsuite/ld-size/size.exp: Likewise. + +2020-08-28 Jozef Lawrynowicz + + * emultempl/msp430.em (input_section_exists): New. + (check_array_section_alignment): New. + (gld${EMULATION_NAME}_finish): New. + * scripttempl/elf32msp430.sc: Add ALIGN directives before the + definition of __*_array_start symbols. + * testsuite/ld-msp430-elf/finiarray-warn.ld: New test. + * testsuite/ld-msp430-elf/finiarray-warn.r: New test. + * testsuite/ld-msp430-elf/initarray-nowarn.ld: New test. + * testsuite/ld-msp430-elf/initarray-warn.ld: New test. + * testsuite/ld-msp430-elf/initarray-warn.r: New test. + * testsuite/ld-msp430-elf/initarray.s: New test. + * testsuite/ld-msp430-elf/msp430-elf.exp: Run new tests. + * testsuite/ld-msp430-elf/preinitarray-warn.ld: New test. + * testsuite/ld-msp430-elf/preinitarray-warn.r: New test. + +2020-08-28 Jozef Lawrynowicz + + * ldmisc.c (vfinfo): Support new "%pU" format specifier. + +2020-08-28 Cooper Qu + + * emulparams/cskyelf.sh: Support attribute section. + * testsuite/ld-csky/tls-le-v1.d: Match .csky.attributes section. + * ld/testsuite/ld-csky/tls-le.d: Likewise. + * testsuite/ld-elf/non-contiguous.ld: Ignore .csky.attributes + section. + +2020-08-28 Nick Clifton + + PR 19011 + * testsuite/lib/ld-lib.exp (ld_link_defsyms): For PE based targets + define the __main and ___main symbols in terms of the main symbol. + +2020-08-28 Alan Modra + + PR 19011 + * testsuite/ld-plugin/plugin.exp: Use modified CFLAGS throughout + file. Add --image-base for pecoff. + +2020-08-28 Nelson Chu + + testsuite/ld-riscv-elf/lib-nopic-01a.s: Use R_RISCV_JAL rather + than R_RISCV_CALL. + testsuite/ld-riscv-elf/lib-nopic-01b.d: Likewise. + testsuite/ld-riscv-elf/lib-nopic-01b.s: Likewise. + +2020-08-27 Jozef Lawrynowicz + + * emultempl/msp430.em: Remove unused variable "buf". + +2020-08-27 Nick Alcock + + * ldlang.c (dump_ctf_errs): Unquote CTF error messages. + (ldlang_open_ctf): Likewise. + (lang_merge_ctf): Likewise. + (lang_write_ctf): Likewise. + * testsuite/ld-ctf/diag-ctf-version-f.d: Adjust. + * testsuite/ld-ctf/diag-cttname-invalid.d: Adjust. + * testsuite/ld-ctf/diag-decompression-failure.d: Adjust. + * testsuite/ld-ctf/diag-parname.d: Adjust. + * testsuite/ld-ctf/diag-unsupported-flag.d: Adjust. + * testsuite/ld-ctf/diag-wrong-magic-number-mixed.d: Adjust. + * testsuite/ld-ctf/diag-wrong-magic-number.d: Adjust. + +2020-08-27 Nick Alcock + + * ldlang.c (lang_ctf_errs_warnings): Support calls with NULL fp. + Adjust for new err parameter to ctf_errwarning_next. Only + check for assertion failures when fp is non-NULL. + (ldlang_open_ctf): Call it on open errors. + * testsuite/ld-ctf/ctf.exp: Always use the C locale to avoid + breaking the diags tests. + +2020-08-27 Jeremy Drake + + PR 19011 + * emultempl/pe.em (DEFAULT_DLL_CHARACTERISTICS): Define. + (pe_dll_characteristics): Initialise to DEFAULT_DLL_CHARACTERISTICS. + (add_options): Add options to disable DLL characteristics. + (list_options): List the new options. + (handle_options): Handle the new options. + * emultempl/pep.em: Similar changes to above. + (NT_EXE_IMAGE_BASE): Default to an address above 4G. + (NT_DLL_IMAGE_BASE, NT_DLL_AUTO_IMAGE_BASE, + (NT_DLL_AUTO_IMAGE_MASK): Likewise. + * ld.texi: Document the new options. + * pe-dll.c (pe_dll_enable_reloc_section): Change to default to + true. + (generate_reloc): Do nothing if there is no reloc section. + (pe_exe_fill_sections): Only assign the reloc section contents if + the section exists. + * testsuite/ld-pe/pe.exp: Add the --disable-reloc-section flag to + the .secrel32 tests. + * testsuite/ld-scripts/provide-8.d: Expect for fail on PE targets. + * NEWS: Mention the change in DLL generation. + +2020-08-26 H.J. Lu + + * testsuite/ld-elf/indirect.exp: Append $NOSANTIZE_CFLAGS to CC. + * testsuite/ld-elf/shared.exp: Likewise. + * testsuite/ld-elfcomm/elfcomm.exp: Likewise. + * testsuite/ld-elfvers/vers.exp: Likewise. + * testsuite/ld-elfvsb/elfvsb.exp: Likewise. + * testsuite/ld-elfweak/elfweak.exp: Likewise. + * testsuite/ld-plugin/lto.exp: Likewise. + * testsuite/ld-plugin/plugin.exp: Likewise. + * testsuite/ld-scripts/crossref.exp: Likewise. + +2020-08-26 Alan Modra + + PR 26499 + * emultempl/spuelf.em (spu_elf_relink): Check for NULL tmp_file_list. + +2020-08-26 Alan Modra + + PR 26431 + * pe-dll.c (auto_export): Don't call bsearch with zero count. + +2020-08-25 Alan Modra + + * testsuite/ld-libs/libs.exp: Don't run on sh-pe, tic30 or tic54x. + * testsuite/ld-scripts/data.d: xfail tic4x and tic54x. + * testsuite/ld-scripts/empty-address-2a.d: xfail tic54x. + * testsuite/ld-scripts/empty-address-2b.d: Likewise. + * testsuite/ld-scripts/include-1.d: xfail tic4x and tic54x. + * testsuite/ld-scripts/provide-1.d: xfail tic54x. + * testsuite/ld-scripts/provide-2.d: Likewise. + * testsuite/ld-scripts/provide-4.d: Likewise. + +2020-08-24 Alan Modra + + * testsuite/ld-sparc/tlssunbin32.rd: Update for new readelf output. + * testsuite/ld-sparc/tlssunbin64.rd: Likewise. + +2020-08-24 Alan Modra + + * testsuite/ld-powerpc/tls32.d: Update for TPREL_HA/LO optimisation. + * testsuite/ld-powerpc/tlsexe32.d: Likewise. + * testsuite/ld-powerpc/tlsldopt32.d: Likewise. + * testsuite/ld-powerpc/tlsmark32.d: Likewise. + * testsuite/ld-powerpc/tlsopt4_32.d: Likewise. + * testsuite/ld-powerpc/tprel.s, + * testsuite/ld-powerpc/tprel.d, + * testsuite/ld-powerpc/tprel32.d: New tests. + * testsuite/ld-powerpc/tprelbad.s, + * testsuite/ld-powerpc/tprelbad.d: New test. + * testsuite/ld-powerpc/powerpc.exp: Run them. + +2020-08-22 H.J. Lu + + PR ld/26382 + * testsuite/ld-elf/pr26302.nd: Updated. + * testsuite/ld-elf/pr26302.rd: New file. + * testsuite/ld-elf/shared.exp: Add a test for readelf -sW. + +2020-08-20 Nick Clifton + + PR 26428 + * testsuite/ld-elf/zlibbegin.rS: Update expected output. + * testsuite/ld-elf/zlibnormal.rS: Likewise. + +2020-08-16 Alan Modra + + * testsuite/ld-powerpc/inline.s, + * testsuite/ld-powerpc/inline-1.d, + * testsuite/ld-powerpc/inline-2.d, + * testsuite/ld-powerpc/inline-3.d, + * testsuite/ld-powerpc/inline-4.d, + * testsuite/ld-powerpc/inlinepcrel.s, + * testsuite/ld-powerpc/inlinepcrel-1.d, + * testsuite/ld-powerpc/inlinepcrel-2.d, + * testsuite/ld-powerpc/inlinepcrel-3.d: New tests. + * testsuite/ld-powerpc/powerpc.exp: Run them. + +2020-08-16 H.J. Lu + + PR binutils/26389 + * testsuite/ld-plugin/lto.exp: Run PR binutils/26389 test. + * testsuite/ld-plugin/pr26389.c: New file. + * testsuite/ld-plugin/pr26389.d: Likewise. + +2020-08-14 Tamar Christina + + * testsuite/ld-arm/thumb-plt-got.d: Relax regexpr. + * testsuite/ld-arm/thumb-plt.d: Likewise. + +2020-08-13 Alan Modra + + * emultempl/ppc64elf.em (params): Init new field. + (enum ppc64_opt): Add OPTION_NO_PCREL_OPT. + (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS), + (PARSE_AND_LIST_ARGS_CASES): Support --no-pcrel-optimize. + +2020-08-10 Nick Clifton + + PR ld/21351 + * ld.texi: Clarify the behaviour of the --relax and --no-relax + options on systems that do not support them. + +2020-08-10 H.J. Lu + + PR binutils/26302 + * testsuite/ld-elf/pr26302.nd: New file. + * testsuite/ld-elf/pr26302.ver: Likewise. + * testsuite/ld-elf/pr26302a.c: Likewise. + * testsuite/ld-elf/pr26302b.c: Likewise. + * testsuite/ld-elf/shared.exp: Run binutils/26302 tests. + +2020-08-07 David Faust + + * testsuite/ld-bpf/call-3.s: New file. + * testsuite/ld-bpf/call-3.d: Likewise. + +2020-08-05 David Faust + + * testsuite/ld-bpf/call-2.s: New file. + * testsuite/ld-bpf/call-2.d: Likewise. + * testsuite/ld-bpf/reloc-data-be.d: Likewise. + * testsuite/ld-bpf/reloc-data-le.d: Likewise. + * testsuite/ld-bpf/reloc-data.s: Likewise. + * testsuite/ld-bpf/reloc-insn-external-be.d: Likewise. + * testsuite/ld-bpf/reloc-insn-external-le.d: Likewise. + * testsuite/ld-bpf/reloc-insn-external.s: Likewise. + * testsuite/ld-bpf/reloc-insn32-be.d: Likewise. + * testsuite/ld-bpf/reloc-insn32-le.d: Likewise. + * testsuite/ld-bpf/reloc-insn32.s: Likewise. + * testsuite/ld-bpf/reloc-insn64-be.d: Likewise. + * testsuite/ld-bpf/reloc-insn64-le.d: Likewise. + * testsuite/ld-bpf/reloc-insn64.s: Likewise. + +2020-08-06 Jozef Lawrynowicz + + * emultempl/msp430.em (change_output_section): Update the tail + of the output section statement list when moving the original + tail to a different output section. + (eval_upper_either_sections): Don't move sections from the upper + region to the lower region unless the upper region is + overflowing. + +2020-08-03 Alan Modra + + * ldlex.l (yy_create_string_buffer): Use xmalloc rather than malloc. + * lexsup.c (parse_args): Likewise. + +2020-08-03 Alan Modra + + PR 26328 + * configure.ac: AC_CHECK_DECLS asprintf. + * configure: Regenerate. + * config.in: Regenerate. + +2020-08-03 Alan Modra + + * testsuite/ld-elfvers/vers.exp (objdump_symstuff): Remove unused + variable. Init list_a and list_b to empty. + (objdump_dynsymstuff): Likewise, and remove undefined list_a + handling. + * testsuite/ld-elfweak/elfweak.exp (objdump_symstuff): Similarly. + (objdump_dynsymstuff): Similarly. + +2020-07-31 H.J. Lu + + * testsuite/ld-elf/indirect.exp: Append -fno-lto to CC. + * testsuite/ld-elfvers/vers.exp: Likewise. + * testsuite/ld-elfweak/elfweak.exp: Likewise. + * testsuite/ld-ifunc/ifunc.exp: Likewise. + * testsuite/ld-plugin/lto.exp (no_lto): New. + Add $no_lto to build pr15146c.so. + * testsuite/lib/ld-lib.exp (at_least_gcc_version): Filter out + -Wl,xxx options. + (check_gcc_plugin_enabled): Likewise. + (run_ld_link_exec_tests): Prepend -fno-lto to $cflags. + (run_cc_link_tests): Likewise. + +2020-07-31 Shahab Vahedi + + * scripttempl/elfarc.sc (.init_array): Keep ".init_array.*". + (.fini_array): Keep ".fini_array.*". + +2020-07-30 Rainer Orth + + * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS. + * Makefile.in: Regenerate. + * configure: Regenerate. + +2020-07-29 Maciej W. Rozycki + + * testsuite/ld-elf/sec64k.exp: Also accept a section symbol with + a name. + * testsuite/ld-mips-elf/global-local-symtab-sort-o32.d: New + test. + * testsuite/ld-mips-elf/global-local-symtab-sort-o32t.d: New + test. + * testsuite/ld-mips-elf/global-local-symtab-sort-n32.d: New + test. + * testsuite/ld-mips-elf/global-local-symtab-sort-n32t.d: New + test. + * testsuite/ld-mips-elf/global-local-symtab-sort-n64.d: New + test. + * testsuite/ld-mips-elf/global-local-symtab-sort-n64t.d: New + test. + * testsuite/ld-mips-elf/global-local-symtab-final-o32.d: New + test. + * testsuite/ld-mips-elf/global-local-symtab-final-n32.d: New + test. + * testsuite/ld-mips-elf/global-local-symtab-final-n64.d: New + test. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. + +2020-07-29 Maciej W. Rozycki + + * testsuite/ld-mips-elf/global-local-symtab-o32.d: New test. + * testsuite/ld-mips-elf/global-local-symtab-o32t.d: New test. + * testsuite/ld-mips-elf/global-local-symtab-n32.d: New test. + * testsuite/ld-mips-elf/global-local-symtab-n32t.d: New test. + * testsuite/ld-mips-elf/global-local-symtab-n64.d: New test. + * testsuite/ld-mips-elf/global-local-symtab.ld: New test linker + script. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. + +2020-07-29 Alan Modra + + * ldelf.c (ldelf_before_place_orphans): Set SEC_EXCLUDE for + discarded sections. + +2020-07-28 Alan Modra + + * ldlang.c (lang_check): Don't complain about relocs or merge + attributes from --just-symbols input. + * testsuite/ld-misc/just-symbols.exp: Just dump .data section. + Don't run test on a number of targets. + +2020-07-28 Alan Modra + + * testsuite/ld-misc/just-symbols-1.dd: Revert last change. + +2020-07-27 Alan Modra + + * testsuite/ld-misc/just-symbols.exp: Run for x86_64 PE too. + Set LDFLAGS for PE and XCOFF. + * testsuite/ld-misc/just-symbols.ld: Accept XCOFF mapped .data. + * testsuite/ld-misc/just-symbols-1.dd: Don't check format or + "Contents of section" lines. + +2020-07-27 Alan Modra + + * testsuite/lib/ld-lib.exp (check_ctf_available): Check first that + target compiler is available. + +2020-07-23 Maciej W. Rozycki + + PR ld/26288 + * ldelf.c (ldelf_after_open): Do not reject ET_EXEC input + supplied with `--just-symbols'. + * testsuite/ld-misc/just-symbols.exp: New test script. + * testsuite/ld-misc/just-symbols-1.dd: New test dump. + * testsuite/ld-misc/just-symbols.ld: New test linker script. + * testsuite/ld-misc/just-symbols-0.s: New test source. + * testsuite/ld-misc/just-symbols-1.s: New test source. + +2020-07-23 Maciej W. Rozycki + + PR ld/26288 + + Revert: + PR 26047 + * ldelf.c (ldelf_after_open): Fail if attempting to link one + executable into another. + +2020-07-22 Nick Alcock + + * testsuite/ld-ctf/ctf.exp: Skip on non-ELF for now. + +2020-07-22 Nick Alcock + + * ldlang.c (ldlang_open_ctf): Set SEC_EXCLUDE on all but the + first input .ctf section. + +2020-07-22 Nick Alcock + + * configure.ac (enable_libctf): Substitute it. + * Makefile.am (enablings.exp): New. + (EXTRA_DEJAGNU_SITE_CONFIG): Add it. + (DISTCLEANFILES): Likewise. + * Makefile.in: Regenerate. + * configure: Likewise. + * testsuite/lib/ld-lib.exp (compile_one_cc): New. + (check_ctf_available): Likewise. + (skip_ctf_tests): Likewise. + * testsuite/ld-ctf/ctf.exp: Call skip_ctf_tests. + +2020-07-22 Egeyar Bagcioglu + + * testsuite/ld-ctf/ctf.exp: New file. + * testsuite/ld-ctf/A-2.c: New file. + * testsuite/ld-ctf/A.c: New file. + * testsuite/ld-ctf/B-2.c: New file. + * testsuite/ld-ctf/B.c: New file. + * testsuite/ld-ctf/C-2.c: New file. + * testsuite/ld-ctf/C.c: New file. + * testsuite/ld-ctf/array-char.c: New file. + * testsuite/ld-ctf/array-int.c: New file. + * testsuite/ld-ctf/array.d: New file. + * testsuite/ld-ctf/child-float.c: New file. + * testsuite/ld-ctf/child-int.c: New file. + * testsuite/ld-ctf/conflicting-cycle-1.B-1.d: New file. + * testsuite/ld-ctf/conflicting-cycle-1.B-2.d: New file. + * testsuite/ld-ctf/conflicting-cycle-1.parent.d: New file. + * testsuite/ld-ctf/conflicting-cycle-2.A-1.d: New file. + * testsuite/ld-ctf/conflicting-cycle-2.A-2.d: New file. + * testsuite/ld-ctf/conflicting-cycle-2.parent.d: New file. + * testsuite/ld-ctf/conflicting-cycle-3.C-1.d: New file. + * testsuite/ld-ctf/conflicting-cycle-3.C-2.d: New file. + * testsuite/ld-ctf/conflicting-cycle-3.parent.d: New file. + * testsuite/ld-ctf/conflicting-enums.d: New file. + * testsuite/ld-ctf/conflicting-typedefs.d: New file. + * testsuite/ld-ctf/cross-tu-1.c: New file. + * testsuite/ld-ctf/cross-tu-2.c: New file. + * testsuite/ld-ctf/cross-tu-conflicting-2.c: New file. + * testsuite/ld-ctf/cross-tu-cyclic-1.c: New file. + * testsuite/ld-ctf/cross-tu-cyclic-2.c: New file. + * testsuite/ld-ctf/cross-tu-cyclic-3.c: New file. + * testsuite/ld-ctf/cross-tu-cyclic-4.c: New file. + * testsuite/ld-ctf/cross-tu-cyclic-conflicting.d: New file. + * testsuite/ld-ctf/cross-tu-cyclic-nonconflicting.d: New file. + * testsuite/ld-ctf/cross-tu-into-cycle.d: New file. + * testsuite/ld-ctf/cross-tu-noncyclic.d: New file. + * testsuite/ld-ctf/cycle-1.c: New file. + * testsuite/ld-ctf/cycle-1.d: New file. + * testsuite/ld-ctf/cycle-2.A.d: New file. + * testsuite/ld-ctf/cycle-2.B.d: New file. + * testsuite/ld-ctf/cycle-2.C.d: New file. + * testsuite/ld-ctf/diag-ctf-version-0.d: New file. + * testsuite/ld-ctf/diag-ctf-version-0.s: New file. + * testsuite/ld-ctf/diag-ctf-version-2-unsupported-feature.d: New file. + * testsuite/ld-ctf/diag-ctf-version-2-unsupported-feature.s: New file. + * testsuite/ld-ctf/diag-ctf-version-f.d: New file. + * testsuite/ld-ctf/diag-ctf-version-f.s: New file. + * testsuite/ld-ctf/diag-cttname-invalid.d: New file. + * testsuite/ld-ctf/diag-cttname-invalid.s: New file. + * testsuite/ld-ctf/diag-cttname-null.d: New file. + * testsuite/ld-ctf/diag-cttname-null.s: New file. + * testsuite/ld-ctf/diag-cuname.d: New file. + * testsuite/ld-ctf/diag-cuname.s: New file. + * testsuite/ld-ctf/diag-decompression-failure.d: New file. + * testsuite/ld-ctf/diag-decompression-failure.s: New file. + * testsuite/ld-ctf/diag-parlabel.d: New file. + * testsuite/ld-ctf/diag-parlabel.s: New file. + * testsuite/ld-ctf/diag-parname.d: New file. + * testsuite/ld-ctf/diag-parname.s: New file. + * testsuite/ld-ctf/diag-unsupported-flag.d: New file. + * testsuite/ld-ctf/diag-unsupported-flag.s: New file. + * testsuite/ld-ctf/diag-wrong-magic-number-mixed.d: New file. + * testsuite/ld-ctf/diag-wrong-magic-number.d: New file. + * testsuite/ld-ctf/diag-wrong-magic-number.s: New file. + * testsuite/ld-ctf/enum-2.c: New file. + * testsuite/ld-ctf/enum.c: New file. + * testsuite/ld-ctf/function.c: New file. + * testsuite/ld-ctf/function.d: New file. + * testsuite/ld-ctf/slice.c: New file. + * testsuite/ld-ctf/slice.d: New file. + * testsuite/ld-ctf/super-sub-cycles.c: New file. + * testsuite/ld-ctf/super-sub-cycles.d: New file. + * testsuite/ld-ctf/typedef-int.c: New file. + * testsuite/ld-ctf/typedef-long.c: New file. + * testsuite/ld-ctf/union-1.c: New file. + +2020-07-22 Nick Alcock + + * ldlex.h (option_values) : New. + * ld.h (ld_config_type) : + New fields. + * ldlang.c (lang_merge_ctf): Use them. + * lexsup.c (ld_options): Add ctf-variables, no-ctf-variables, + ctf-share-types. + (parse_args) : New cases. + * ld.texi: Document new options. + * NEWS: Likewise. + +2020-07-22 Egeyar Bagcioglu + + * ldlang.c (lang_merge_ctf): Turn errors into warnings. + Fix a comment typo. + (lang_write_ctf): Turn an error into a warning. + (ldlang_open_ctf): Reformat warnings. Fix printing file names. + +2020-07-22 Nick Alcock + + * ldlang.c (lang_ctf_errs_warnings): New, print CTF errors + and warnings. Assert when libctf asserts. + (lang_merge_ctf): Call it. + (land_write_ctf): Likewise. + +2020-07-22 H.J. Lu + + PR ld/26262 + PR ld/26267 + * ldlang.c (lang_process): Set lto_all_symbols_read after all + LTO IR symbols have been read. + * plugin.c (plugin_notice): Override the IR definition only if + all LTO IR symbols have been read or the new definition is + non-weak and the the IR definition is weak + * testsuite/ld-plugin/lto.exp: Run PR ld/26262 and ld/26267 + tests. + * testsuite/ld-plugin/pr26262a.c: New file. + * testsuite/ld-plugin/pr26262b.c: Likewise. + * testsuite/ld-plugin/pr26262c.c: Likewise. + * testsuite/ld-plugin/pr26267.err: Likewise. + * testsuite/ld-plugin/pr26267a.c: Likewise. + * testsuite/ld-plugin/pr26267b.c: Likewise. + * testsuite/ld-plugin/pr26267c.c: Likewise. + +2020-07-20 Nick Clifton + + * testsuite/ld-powerpc/powerpc.exp (ppcelftests): Use section name + .PPC.EMB.apuinfo instead of section number 2 in apuinfo tests. + +2020-07-20 Alan Modra + + PR 26265 + * ldlang.c (undef_from_cmdline): Delete. + (ldlang_add_undef): Mark "cmdline" param unused. + (lang_end): Traverse gc_sym_list to determine whether a symbol root + has been specified. Update error message. + * testsuite/ld-gc/noent.d: Adjust for changed error message. + +2020-07-20 H.J. Lu + + PR gas/26263 + * testsuite/ld-i386/pr26263.d: Updated. + * testsuite/ld-x86-64/pr26263.d: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run gas/26263 test for all ELF + targets. + +2020-07-19 H.J. Lu + + PR gas/26263 + * testsuite/ld-i386/i386.exp: Run PR gas/26263 test. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr26263.d: New file. + * testsuite/ld-x86-64/pr26263.d: Likewise. + * testsuite/ld-x86-64/pr26263.s: Likewise. + +2020-07-19 Hans-Peter Nilsson + + * scripttempl/elf.sc (ETEXT_LAST_IN_RODATA_SEGMENT): New variable. + * emulparams/elf64mmix.sh (ETEXT_LAST_IN_RODATA_SEGMENT): Define. + * testsuite/ld-mmix/sec-1.d: Adjust. + +2020-07-19 Alan Modra + + * emultempl/ppc64elf.em (power10-stubs): Accept optional "auto" arg. + * ld.texi (power10-stubs): Update. + * testsuite/ld-powerpc/callstub-1.d: Force --power10-stubs. + * testsuite/ld-powerpc/callstub-2.d: Relax branch offset comparison. + * testsuite/ld-powerpc/callstub-4.d: New test. + * testsuite/ld-powerpc/notoc.d: Force --no-power10-stubs. + * testsuite/ld-powerpc/notoc3.d, + * testsuite/ld-powerpc/notoc3.s, + * testsuite/ld-powerpc/notoc3.wf: New test. + * testsuite/ld-powerpc/powerpc.exp: Run new tests. Pass + --no-power10-stubs for notoc link. + +2020-07-17 Hans-Peter Nilsson + + * scripttempt/mmo.sc: Move .init first in .text output section. + * testsuite/ld-mmix/bpo-9m.d: Adjust accordingly. + +2020-07-15 Jan Beulich + + * testsuite/ld-i386/ibt-plt-1.d, testsuite/ld-i386/ibt-plt-2a.d, + testsuite/ld-i386/ibt-plt-2c.d, testsuite/ld-i386/ibt-plt-3a.d, + testsuite/ld-i386/ibt-plt-3c.d, testsuite/ld-i386/plt-pic.pd, + testsuite/ld-i386/plt-pic2.dd, testsuite/ld-i386/plt.pd, + testsuite/ld-i386/plt2.dd, testsuite/ld-i386/pr19636-1d.d, + testsuite/ld-i386/pr19636-1l.d, testsuite/ld-i386/pr19636-2c.d, + testsuite/ld-i386/pr20830.d, testsuite/ld-i386/vxworks1-lib.dd, + testsuite/ld-i386/vxworks1.dd, + testsuite/ld-ifunc/ifunc-2-i386-now.d, + testsuite/ld-ifunc/ifunc-2-local-i386-now.d, + testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d, + testsuite/ld-ifunc/ifunc-2-x86-64-now.d, + testsuite/ld-ifunc/ifunc-21-x86-64.d, + testsuite/ld-ifunc/ifunc-22-x86-64.d, + testsuite/ld-ifunc/pr17154-i386-now.d, + testsuite/ld-ifunc/pr17154-i386.d, + testsuite/ld-ifunc/pr17154-x86-64-now.d, + testsuite/ld-ifunc/pr17154-x86-64.d, + testsuite/ld-x86-64/align-branch-1.d, + testsuite/ld-x86-64/bnd-branch-1-now.d, + testsuite/ld-x86-64/bnd-branch-1.d, + testsuite/ld-x86-64/bnd-ifunc-1-now.d, + testsuite/ld-x86-64/bnd-ifunc-1.d, + testsuite/ld-x86-64/bnd-ifunc-2-now.d, + testsuite/ld-x86-64/bnd-ifunc-2.d, + testsuite/ld-x86-64/bnd-plt-1-now.d, + testsuite/ld-x86-64/bnd-plt-1.d, + testsuite/ld-x86-64/call1a.d, testsuite/ld-x86-64/call1b.d, + testsuite/ld-x86-64/call1d.d, testsuite/ld-x86-64/call1e.d, + testsuite/ld-x86-64/call1f.d, testsuite/ld-x86-64/call1g.d, + testsuite/ld-x86-64/call1h.d, testsuite/ld-x86-64/call1i.d, + testsuite/ld-x86-64/gotpcrel1.dd, + testsuite/ld-x86-64/hidden2.d, + testsuite/ld-x86-64/ibt-plt-1-x32.d, + testsuite/ld-x86-64/ibt-plt-1.d, + testsuite/ld-x86-64/ibt-plt-2a-x32.d, + testsuite/ld-x86-64/ibt-plt-2a.d, + testsuite/ld-x86-64/ibt-plt-2c-x32.d, + testsuite/ld-x86-64/ibt-plt-2c.d, + testsuite/ld-x86-64/ibt-plt-3a-x32.d, + testsuite/ld-x86-64/ibt-plt-3a.d, + testsuite/ld-x86-64/ibt-plt-3c-x32.d, + testsuite/ld-x86-64/ibt-plt-3c.d, + testsuite/ld-x86-64/libno-plt-1b.dd, + testsuite/ld-x86-64/mpx3.dd, testsuite/ld-x86-64/mpx3n.dd, + testsuite/ld-x86-64/mpx4.dd, testsuite/ld-x86-64/mpx4n.dd, + testsuite/ld-x86-64/no-plt-1a.dd, + testsuite/ld-x86-64/no-plt-1b.dd, + testsuite/ld-x86-64/no-plt-1c.dd, + testsuite/ld-x86-64/no-plt-1d.dd, + testsuite/ld-x86-64/no-plt-1e.dd, + testsuite/ld-x86-64/no-plt-1f.dd, + testsuite/ld-x86-64/no-plt-1g.dd, + testsuite/ld-x86-64/plt-main-bnd.dd, + testsuite/ld-x86-64/plt-main-ibt-x32.dd, + testsuite/ld-x86-64/plt-main-ibt.dd, + testsuite/ld-x86-64/plt.pd, testsuite/ld-x86-64/plt2.dd, + testsuite/ld-x86-64/pr19609-5a.d, + testsuite/ld-x86-64/pr19609-5b.d, + testsuite/ld-x86-64/pr19609-5c.d, + testsuite/ld-x86-64/pr19609-5e.d, + testsuite/ld-x86-64/pr19609-7b.d, + testsuite/ld-x86-64/pr19609-7d.d, + testsuite/ld-x86-64/pr19636-2d.d, + testsuite/ld-x86-64/pr19636-2l.d, + testsuite/ld-x86-64/pr20253-1b.d, + testsuite/ld-x86-64/pr20253-1d.d, + testsuite/ld-x86-64/pr20253-1f.d, + testsuite/ld-x86-64/pr20253-1h.d, + testsuite/ld-x86-64/pr20253-1j.d, + testsuite/ld-x86-64/pr20253-1l.d, + testsuite/ld-x86-64/pr20830a-now.d, + testsuite/ld-x86-64/pr20830a.d, + testsuite/ld-x86-64/pr20830b-now.d, + testsuite/ld-x86-64/pr20830b.d, + testsuite/ld-x86-64/pr21038a-now.d, + testsuite/ld-x86-64/pr21038a.d, + testsuite/ld-x86-64/pr21038b-now.d, + testsuite/ld-x86-64/pr21038b.d, + testsuite/ld-x86-64/pr21038c-now.d, + testsuite/ld-x86-64/pr21038c.d, + testsuite/ld-x86-64/pr23930-x32.d, + testsuite/ld-x86-64/pr23930.d, + testsuite/ld-x86-64/pr25416-1a.d, + testsuite/ld-x86-64/pr25416-2a.d, + testsuite/ld-x86-64/pr26018.d, + testsuite/ld-x86-64/protected2-k1om.d, + testsuite/ld-x86-64/protected2-l1om.d, + testsuite/ld-x86-64/protected2.d, + testsuite/ld-x86-64/protected3.d, + testsuite/ld-x86-64/protected8.d, + testsuite/ld-x86-64/tlsbin.dd, testsuite/ld-x86-64/tlsbin2.dd, + testsuite/ld-x86-64/tlsbindesc.dd, + testsuite/ld-x86-64/tlsdesc.dd, + testsuite/ld-x86-64/tlsdesc.pd, + testsuite/ld-x86-64/tlsgd10.dd, + testsuite/ld-x86-64/tlsgd7.dd, testsuite/ld-x86-64/tlsgd8.dd, + testsuite/ld-x86-64/tlsgd9.dd, + testsuite/ld-x86-64/tlsgdesc.dd, + testsuite/ld-x86-64/tlsld3.dd, testsuite/ld-x86-64/tlsld4.dd, + testsuite/ld-x86-64/tlspic.dd, testsuite/ld-x86-64/tlspic2.dd, + testsuite/ld-x86-64/tlspie2b.d, testsuite/ld-x86-64/tlspie2c.d: + Adjust expectations. + +2020-07-15 Hans-Peter Nilsson + + * testsuite/ld-mmix/undef-1.d, testsuite/ld-mmix/undef-1m.d, + testsuite/ld-mmix/undef-2.d, testsuite/ld-mmix/undef-2m.d: Add + start- and end-anchors to error-string to match just a + single-line error-message. + +2020-07-13 Alan Modra + + * testsuite/ld-scripts/default-script1.d: Don't skip, xfail + using is_pecoff_format. + * testsuite/ld-scripts/default-script2.d: Likewise. + * testsuite/ld-scripts/default-script3.d: Likewise. + * testsuite/ld-scripts/default-script4.d: Likewise. + * testsuite/ld-scripts/pr20302.d: Remove x86_64-*-cygwin from notarget. + * testsuite/ld-scripts/provide-6.d: Remove x86_64-*-cygwin from xfail. + * testsuite/ld-scripts/provide-8.d: Likewise. + +2020-07-10 Alan Modra + + * ld.texi (PowerPC64 ELF64): Document --no-inline-optimize, + --power10-stubs and --no-power10-stubs. + +2020-07-10 Alan Modra + + * emultempl/ppc64elf.em (params): Init new field. + (enum ppc64_opt): Add OPTION_POWER10_STUBS and OPTION_NO_POWER10_STUBS. + (PARSE_AND_LIST_LONGOPTS): Support --power10-stubs and + --no-power10-stubs. + (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise. + * testsuite/ld-powerpc/callstub-3.d: New test. + * testsuite/ld-powerpc/powerpc.exp: Run it. + +2020-07-09 Alan Modra + + * emulparams/ppcpe.sh: Delete. + * scripttempl/ppcpe.sc: Delete. + * emulparams/ppclynx.sh: Delete. + * Makefile.am (ALL_EMULATION_SOURCES): Remove ppc PE and lynxos. + * configure.tgt: Likewise. + * emultempl/beos.em: Remove powerpc PE support. + * emultempl/pe.em: Likewise. + * po/BLD-POTFILES.in: Regenerate. + * Makefile.in: Regenerate. + +2020-07-09 Alan Modra + + * testsuite/ld-gc/gc.exp: Don't set -mminimal-toc for powerpc64, + and remove powerpc64 xfail. Use -fno-PIE for ppc32. + +2020-07-09 Alan Modra + + PR 18841 + * testsuite/ld-ifunc/ifunc.exp: Run pr18841 tests non-pie. + +2020-07-08 Alan Modra + + * testsuite/lib/ld-lib.exp (ar_simple_create): Pass options before + ar command. + * testsuite/ld-powerpc/aix52.exp: Run for rs6000-aix5.2. Update + match files. + * testsuite/ld-powerpc/aix-abs-branch-1.dd: Update. + * testsuite/ld-powerpc/aix-core-sec-1.hd: Update. + * testsuite/ld-powerpc/aix-gc-1-32.dd: Update. + * testsuite/ld-powerpc/aix-gc-1-64.dd: Update. + * testsuite/ld-powerpc/aix-glink-1-32.dd: Update. + * testsuite/ld-powerpc/aix-glink-1-64.dd: Update. + * testsuite/ld-powerpc/aix-glink-2-32.dd: Update. + * testsuite/ld-powerpc/aix-glink-2-64.dd: Update. + * testsuite/ld-powerpc/aix-no-dup-syms-1-rel.rd: Update. + * testsuite/ld-powerpc/aix-ref-1-32.od: Update. + * testsuite/ld-powerpc/aix-ref-1-64.od: Update. + * testsuite/ld-powerpc/aix-toc-1-32.dd: Update. + * testsuite/ld-powerpc/aix-toc-1-64.dd: Update. + * testsuite/ld-powerpc/aix-weak-3-32.dd: Update. + * testsuite/ld-powerpc/aix-weak-3-64.dd: Update. + * testsuite/ld-powerpc/aix-abs-branch-1.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-abs-branch-1-32.nd, + * testsuite/ld-powerpc/aix-abs-branch-1-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-abs-reloc-1.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-abs-reloc-1-32.nd, + * testsuite/ld-powerpc/aix-abs-reloc-1-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-abs-reloc-1.od: Delete, replace with.. + * testsuite/ld-powerpc/aix-abs-reloc-1-32.od, + * testsuite/ld-powerpc/aix-abs-reloc-1-64.od: ..these new files. + * testsuite/ld-powerpc/aix-export-1-all.dd: Delete, replace with.. + * testsuite/ld-powerpc/aix-export-1-all-32.dd, + * testsuite/ld-powerpc/aix-export-1-all-64.dd: ..these new files. + * testsuite/ld-powerpc/aix-export-1-full.dd: Delete, replace with.. + * testsuite/ld-powerpc/aix-export-1-full-32.dd, + * testsuite/ld-powerpc/aix-export-1-full-64.dd: ..these new files. + * testsuite/ld-powerpc/aix-export-2.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-export-2-32.nd, + * testsuite/ld-powerpc/aix-export-2-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-gc-1.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-gc-1-32.nd, + * testsuite/ld-powerpc/aix-gc-1-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-glink-3.dd: Delete, replace with.. + * testsuite/ld-powerpc/aix-glink-3-32.dd, + * testsuite/ld-powerpc/aix-glink-3-64.dd: ..these new files. + * testsuite/ld-powerpc/aix-lineno-1a.dd: Delete, replace with.. + * testsuite/ld-powerpc/aix-lineno-1a-32.dd, + * testsuite/ld-powerpc/aix-lineno-1a-64.dd: ..these new files. + * testsuite/ld-powerpc/aix-lineno-1a.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-lineno-1a-32.nd, + * testsuite/ld-powerpc/aix-lineno-1a-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-lineno-1b.dd: Delete, replace with.. + * testsuite/ld-powerpc/aix-lineno-1b-32.dd, + * testsuite/ld-powerpc/aix-lineno-1b-64.dd: ..these new files. + * testsuite/ld-powerpc/aix-lineno-1b.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-lineno-1b-32.nd, + * testsuite/ld-powerpc/aix-lineno-1b-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.dnd: Delete, replace with.. + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.dnd, + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.dnd: ..these new files. + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.drd: Delete, replace with.. + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.drd, + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.drd: ..these new files. + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.nd, + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.rd: Delete, replace with.. + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.rd, + * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.rd: ..these new files. + * testsuite/ld-powerpc/aix-weak-1-dso.dnd: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-1-dso-32.dnd, + * testsuite/ld-powerpc/aix-weak-1-dso-64.dnd: ..these new files. + * testsuite/ld-powerpc/aix-weak-1-dso.hd: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-1-dso-32.hd, + * testsuite/ld-powerpc/aix-weak-1-dso-64.hd: ..these new files. + * testsuite/ld-powerpc/aix-weak-1-dso.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-1-dso-32.nd, + * testsuite/ld-powerpc/aix-weak-1-dso-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-weak-1-gcdso.dnd: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-1-gcdso-32.dnd, + * testsuite/ld-powerpc/aix-weak-1-gcdso-64.dnd: ..these new files. + * testsuite/ld-powerpc/aix-weak-1-gcdso.hd: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-1-gcdso-32.hd, + * testsuite/ld-powerpc/aix-weak-1-gcdso-64.hd: ..these new files. + * testsuite/ld-powerpc/aix-weak-1-gcdso.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-1-gcdso-32.nd, + * testsuite/ld-powerpc/aix-weak-1-gcdso-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-weak-2a.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-2a-32.nd, + * testsuite/ld-powerpc/aix-weak-2a-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-weak-2b.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-2b-32.nd, + * testsuite/ld-powerpc/aix-weak-2b-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-weak-2c.nd: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-2c-32.nd, + * testsuite/ld-powerpc/aix-weak-2c-64.nd: ..these new files. + * testsuite/ld-powerpc/aix-weak-2c.od: Delete, replace with.. + * testsuite/ld-powerpc/aix-weak-2c-32.od, + * testsuite/ld-powerpc/aix-weak-2c-64.od: ..these new files. + +2020-07-07 Alan Modra + + * testsuite/ld-scripts/section-match-1.d: xfail h8300. + +2020-07-07 Alan Modra + + * testsuite/ld-scripts/align.exp: Don't exclude xcoff. Pass + -bnogc ld option for xcoff. + * testsuite/ld-scripts/provide.exp: Likewise. + * testsuite/ld-scripts/data.exp: Pass -bnogc ld option for xcoff. + * testsuite/ld-scripts/default-script.exp: Likewise. + * testsuite/ld-scripts/defined.exp: Likewise. + * testsuite/ld-scripts/empty-address.exp: Likewise. + * testsuite/ld-scripts/expr.exp: Likewise. + * testsuite/ld-scripts/include.exp: Likewise. + * testsuite/ld-scripts/script.exp: Likewise. + * testsuite/ld-scripts/assign-loc.d: Don't exclude xcoff. + * testsuite/ld-scripts/defined3.d: Likewise. + * testsuite/ld-scripts/defined4.d: Likewise. + * testsuite/ld-scripts/pr18963.d: Likewise. + * testsuite/ld-scripts/sane1.d: Likewise. + * testsuite/ld-scripts/segment-start.d: Likewise. + * testsuite/ld-scripts/include-1.d: Likewise, and relax text vma. + * testsuite/ld-scripts/defined5.d: Update xfail and comment. + * testsuite/ld-scripts/defined5.s: Tweak "defined" to be at + non-zero section offset. + * testsuite/ld-scripts/fill16.d: xfail for xcoff. + * testsuite/ld-scripts/provide-2.d: Accept more symbols. + * testsuite/ld-scripts/provide-4.d: Likewise. + * testsuite/ld-scripts/provide-5.d: Likewise. + * testsuite/ld-scripts/provide-6.d: Likewise. + * testsuite/ld-scripts/provide-7.d: Likewise. + * testsuite/ld-scripts/align.t: Accept xcoff mapped .text and .data. + * testsuite/ld-scripts/defined3.t: Likewise. + * testsuite/ld-scripts/defined4.t: Likewise. + * testsuite/ld-scripts/defined5.t: Likewise. + * testsuite/ld-scripts/fill.t: Likewise. + * testsuite/ld-scripts/include-subdata.t: Likewise. + * testsuite/ld-scripts/provide-1.t: Likewise. + * testsuite/ld-scripts/provide-2.t: Likewise. + * testsuite/ld-scripts/provide-3.t: Likewise. + * testsuite/ld-scripts/provide-4.t: Likewise. + * testsuite/ld-scripts/provide-5.t: Likewise. + * testsuite/ld-scripts/provide-6.t: Likewise. + * testsuite/ld-scripts/provide-7.t: Likewise. + * testsuite/ld-scripts/provide-8.t: Likewise. + * testsuite/ld-scripts/assign-loc.t: Add required xcoff sections. + * testsuite/ld-scripts/sizeof.t: Likewise. + * testsuite/ld-scripts/align2.t: Likewise, and mapped sections. + * testsuite/ld-scripts/align5.t: Likewise. + * testsuite/ld-scripts/default-script.t: Likewise. + * testsuite/ld-scripts/empty-address-1.t: Likewise. + * testsuite/ld-scripts/empty-address-2a.t: Likewise. + * testsuite/ld-scripts/empty-address-2b.t: Likewise. + * testsuite/ld-scripts/empty-address-3a.t: Likewise. + * testsuite/ld-scripts/empty-address-3b.t: Likewise. + * testsuite/ld-scripts/empty-address-3c.t: Likewise. + * testsuite/ld-scripts/include-sections.t: Likewise. + * testsuite/ld-scripts/pr14962.t: Likewise. + * testsuite/ld-scripts/sane1.t: Likewise. + +2020-07-07 Alan Modra + + * testsuite/ld-scripts/align.exp: Use is_pecoff_format. + * testsuite/ld-scripts/defined.exp: Likewise. + * testsuite/ld-scripts/provide.exp: Likewise. + * testsuite/ld-scripts/weak.exp: Likewise. + * testsuite/ld-scripts/empty-address.exp: Likewise. Reset LDFLAGS + on exit. + * testsuite/ld-scripts/expr.exp: Set LDFLAGS earlier, and with + --image-base for PE. + * testsuite/ld-scripts/include.exp: Set LDFLAGS for PE. + * testsuite/ld-scripts/script.exp: Use is_pecoff_format, and + set LDFLAGS as well as flags. + +2020-07-07 Alan Modra + + * testsuite/ld-checks/checks.exp: Use is_xcoff_format. + * testsuite/ld-powerpc/powerpc.exp: Likewise. + * testsuite/ld-scripts/print-memory-usage.exp: Likewise. + * testsuite/ld-srec/srec.exp: Likewise. + * testsuite/ld-undefined/require-defined.exp: Likewise. + * testsuite/ld-scripts/expr2.d: Likewise. + * testsuite/ld-scripts/section-match-1.d: Only run for ELF. + * testsuite/ld-elfvers/vers.exp: Delete dead code. + * testsuite/ld-elfvsb/elfvsb.exp: Likewise. + * testsuite/ld-elfweak/elfweak.exp: Likewise. + +2020-07-07 Alan Modra + + * emultempl/aix.em (gld${EMULATION_NAME}_find_exp_assignment): Handle + etree_provided. + +2020-07-07 Alan Modra + + * testsuite/ld-sh/vxworks1-lib.rd: Update expected output. + * testsuite/ld-sh/vxworks4.d: Likewise. + +2020-07-06 Yuri Chornoivan + + PR 26204 + * lexsup.c: Fix spelling mistake. + * po/ld.pot: Regenerate. + +2020-07-06 Nick Clifton + + * po/bg.po: Updated Bulgarian translation. + * po/fr.po: Updated French translation. + * po/pt_BR.po: Updated Brazilian Portuguese translation. + * po/uk.po: Updated Ukranian translation. + +2020-07-04 Nick Clifton + + * configure: Regenerate. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-07-03 Alan Modra + + PR 26028 + * testsuite/ld-arm/arm-elf.exp (vxworks1): Pass --wide to readelf + when dumping relocs. + * testsuite/ld-i386/i386.exp (vxworks1): Likewise. + * testsuite/ld-sh/sh-vxworks.exp (vxworks1): Likewise. + * testsuite/ld-sparc/sparc.exp (vxworks1): Likewise. + * testsuite/ld-arm/vxworks1.rd: Adjust to suit. + * testsuite/ld-i386/vxworks1.rd: Adjust. + * testsuite/ld-sh/vxworks1.rd: Adjust. + * testsuite/ld-sparc/vxworks1.rd: Adjust. + +2020-07-02 Nick Clifton + + PR 26028 + * testsuite/ld-powerpc/powerpc.exp: Add -T option to readelf + command line when running some tests. + * testsuite/ld-arm/arm-elf.exp: Likewise. + * testsuite/ld-mips-elf/mips-elf.exp: Likewise. + * testsuite/ld-mmix/local1.d: Likewise. + * testsuite/ld-mmix/local3.d: Likewise. + * testsuite/ld-mmix/local5.d: Likewise. + * testsuite/ld-mmix/local7.d: Likewise. + * testsuite/ld-powerpc/powerpc.exp: Likewise. + +2020-06-30 H.J. Lu + + * Makefile.am (ALL_EMULATION_SOURCES): Remove eelf_i386_nacl.c, + eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c. + Remove x86 NaCl dep files. + * NEWS: Mention x86 NaCl target support removal. + * configure.tgt: Remove x86 NaCl target support. + * testsuite/ld-elf/binutils.exp: Likewise. + * testsuite/ld-elf/elf.exp: Likewise. + * testsuite/ld-elfvers/vers.exp: Likewise. + * testsuite/ld-i386/align-branch-1.d: Likewise. + * testsuite/ld-i386/export-class.exp: Likewise. + * testsuite/ld-i386/i386.exp: Likewise. + * testsuite/ld-i386/load1.d: Likewise. + * testsuite/ld-i386/pie1.d: Likewise. + * testsuite/ld-i386/pr12570a.d: Likewise. + * testsuite/ld-i386/pr12570b.d: Likewise. + * testsuite/ld-i386/pr19636-1d.d: Likewise. + * testsuite/ld-i386/pr19636-1l.d: Likewise. + * testsuite/ld-i386/pr19636-2c.d: Likewise. + * testsuite/ld-i386/pr19636-2d.d: Likewise. + * testsuite/ld-i386/pr19636-2e.d: Likewise. + * testsuite/ld-i386/pr20244-1a.d: Likewise. + * testsuite/ld-i386/pr20244-1b.d: Likewise. + * testsuite/ld-i386/pr20244-2a.d: Likewise. + * testsuite/ld-i386/pr20244-2b.d: Likewise. + * testsuite/ld-i386/pr20244-2c.d: Likewise. + * testsuite/ld-i386/pr20244-4a.d: Likewise. + * testsuite/ld-i386/pr20244-4b.d: Likewise. + * testsuite/ld-i386/pr21884.d: Likewise. + * testsuite/ld-ifunc/binutils.exp: Likewise. + * testsuite/ld-ifunc/ifunc-10-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-10-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-11-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-11-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-12-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-12-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-13-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-13-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-14a-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-14a-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-14b-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-14b-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-14c-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-14c-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-14d-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-14d-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-14e-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-14e-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-14f-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-14f-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-15-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-15-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-16-i386-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-16-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-16-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-16-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-17a-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-17a-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-17b-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-17b-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-18a-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-18a-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-18b-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-18b-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-19a-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-19a-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-19b-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-19b-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-local-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-local-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-20-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-20-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-21-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-21-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-22-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-22-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-5a-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-5a-local-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-5a-local-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-5a-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-5b-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-5b-local-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-5b-local-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-5b-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-5r-local-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-5r-local-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-6a-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-6a-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-6b-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-6b-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-7a-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-7a-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-7b-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-7b-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-8-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-8-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-9-i386.d: Likewise. + * testsuite/ld-ifunc/ifunc-9-x86-64.d: Likewise. + * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise. + * testsuite/ld-ifunc/pr17154-i386.d: Likewise. + * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/pr17154-x86-64.d: Likewise. + * testsuite/ld-plugin/lto.exp: Likewise. + * testsuite/ld-x86-64/align-branch-1.d: Likewise. + * testsuite/ld-x86-64/dwarfreloc.exp: Likewise. + * testsuite/ld-x86-64/line.exp: Likewise. + * testsuite/ld-x86-64/load1a.d: Likewise. + * testsuite/ld-x86-64/load1b.d: Likewise. + * testsuite/ld-x86-64/load1c.d: Likewise. + * testsuite/ld-x86-64/load1d.d: Likewise. + * testsuite/ld-x86-64/pie3.d: Likewise. + * testsuite/ld-x86-64/pr18160.d: Likewise. + * testsuite/ld-x86-64/pr19013-x32.d: Likewise. + * testsuite/ld-x86-64/pr19013.d: Likewise. + * testsuite/ld-x86-64/pr19636-2d.d: Likewise. + * testsuite/ld-x86-64/pr19636-2l.d: Likewise. + * testsuite/ld-x86-64/pr20253-1b.d: Likewise. + * testsuite/ld-x86-64/pr20253-1d.d: Likewise. + * testsuite/ld-x86-64/pr20253-1f.d: Likewise. + * testsuite/ld-x86-64/pr20253-1h.d: Likewise. + * testsuite/ld-x86-64/pr20253-1j.d: Likewise. + * testsuite/ld-x86-64/pr20253-1l.d: Likewise. + * testsuite/ld-x86-64/pr21884.d: Likewise. + * testsuite/ld-x86-64/pr22393-3a.rd: Likewise. + * testsuite/ld-x86-64/pr22393-3b.rd: Likewise. + * testsuite/ld-x86-64/tlsgd10.dd: Likewise. + * testsuite/ld-x86-64/tlsgd5.dd: Likewise. + * testsuite/ld-x86-64/tlsgd8.dd: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * emulparams/elf32_x86_64_nacl.sh: Removed. + * emulparams/elf_i386_nacl.sh: Likewise. + * emulparams/elf_x86_64_nacl.sh: Likewise. + * testsuite/ld-i386/emit-relocs-nacl.rd: Likewise. + * testsuite/ld-i386/load1-nacl.d: Likewise. + * testsuite/ld-i386/pie1-nacl.d: Likewise. + * testsuite/ld-i386/plt-nacl.pd: Likewise. + * testsuite/ld-i386/plt-pic-nacl.pd: Likewise. + * testsuite/ld-i386/pr17709-nacl.rd: Likewise. + * testsuite/ld-i386/pr19636-1d-nacl.d: Likewise. + * testsuite/ld-i386/pr19636-2c-nacl.d: Likewise. + * testsuite/ld-i386/pr19636-2d-nacl.d: Likewise. + * testsuite/ld-i386/pr19636-2e-nacl.d: Likewise. + * testsuite/ld-i386/pr19827-nacl.rd: Likewise. + * testsuite/ld-i386/pr21884-nacl.d: Likewise. + * testsuite/ld-i386/pr21884-nacl.t: Likewise. + * testsuite/ld-i386/tlsbin-nacl.rd: Likewise. + * testsuite/ld-i386/tlsbin2-nacl.rd: Likewise. + * testsuite/ld-i386/tlsbindesc-nacl.rd: Likewise. + * testsuite/ld-i386/tlsdesc-nacl.rd: Likewise. + * testsuite/ld-i386/tlsgdesc-nacl.rd: Likewise. + * testsuite/ld-i386/tlsnopic-nacl.rd: Likewise. + * testsuite/ld-i386/tlspic-nacl.rd: Likewise. + * testsuite/ld-i386/tlspic2-nacl.rd: Likewise. + * testsuite/ld-x86-64/ilp32-4-nacl.d: Likewise. + * testsuite/ld-x86-64/load1a-nacl.d: Likewise. + * testsuite/ld-x86-64/load1b-nacl.d: Likewise. + * testsuite/ld-x86-64/load1c-nacl.d: Likewise. + * testsuite/ld-x86-64/load1d-nacl.d: Likewise. + * testsuite/ld-x86-64/pie3-nacl.d: Likewise. + * testsuite/ld-x86-64/plt-nacl.pd: Likewise. + * testsuite/ld-x86-64/pr17709-nacl.rd: Likewise. + * testsuite/ld-x86-64/pr19013-nacl.d: Likewise. + * testsuite/ld-x86-64/pr19636-2d-nacl.d: Likewise. + * testsuite/ld-x86-64/pr19827-nacl.rd: Likewise. + * testsuite/ld-x86-64/pr21884-nacl.d: Likewise. + * testsuite/ld-x86-64/pr21884-nacl.t: Likewise. + * testsuite/ld-x86-64/split-by-file-nacl.rd: Likewise. + * testsuite/ld-x86-64/tlsbin-nacl.rd: Likewise. + * testsuite/ld-x86-64/tlsbin2-nacl.rd: Likewise. + * testsuite/ld-x86-64/tlsbindesc-nacl.rd: Likewise. + * testsuite/ld-x86-64/tlsdesc-nacl.pd: Likewise. + * testsuite/ld-x86-64/tlsdesc-nacl.rd: Likewise. + * testsuite/ld-x86-64/tlsgdesc-nacl.rd: Likewise. + * testsuite/ld-x86-64/tlspic-nacl.rd: Likewise. + * testsuite/ld-x86-64/tlspic2-nacl.rd: Likewise. + * Makefile.in: Regenerated. + * po/BLD-POTFILES.in: Likewise. + +2020-06-30 Alan Modra + + * testsuite/ld-elf/group1.d: Don't xfail all solaris targets, just + ix86 and x86_64. + +2020-06-30 Alan Modra + + * testsuite/ld-elf/reloc-discard.d: Don't xfail nds32. + +2020-06-30 Alan Modra + + * scripttempl/elfmicroblaze.sc (.data): Add .data.* entry. + * testsuite/ld-elf/var1.d: Don't xfail microblaze. + +2020-06-29 H.J. Lu + + * testsuite/ld-tic6x/shlib-1.rd: Move C6000_DSBT_BASE, + C6000_DSBT_SIZE and C6000_DSBT_INDEX dynamic tags to the last. + * testsuite/ld-tic6x/shlib-1b.rd: Likewise. + * testsuite/ld-tic6x/shlib-1r.rd: Likewise. + * testsuite/ld-tic6x/shlib-1rb.rd: Likewise. + * testsuite/ld-tic6x/shlib-app-1.rd: Likewise. + * testsuite/ld-tic6x/shlib-app-1b.rd: Likewise. + * testsuite/ld-tic6x/shlib-app-1r.rd: Likewise. + * testsuite/ld-tic6x/shlib-app-1rb.rd: Likewise. + * testsuite/ld-tic6x/shlib-noindex.rd: Likewise. + * testsuite/ld-tic6x/static-app-1.rd: Likewise. + * testsuite/ld-tic6x/static-app-1b.rd: Likewise. + * testsuite/ld-tic6x/static-app-1r.rd: Likewise. + * testsuite/ld-tic6x/static-app-1rb.rd: Likewise. + +2020-06-29 Alan Modra + + * testsuite/ld-x86-64/abs-k1om.d: Run only on x86_64-*-linux*. + * testsuite/ld-x86-64/protected2-k1om.d: Likewise. + * testsuite/ld-x86-64/protected3-k1om.d: Likewise. + +2020-06-26 Nick Alcock + + * configure.ac [--enable-libctf]: New, default yes. + Set ENABLE_LIBCTF accordingly. + * Makefile.am [!ENABLE_LIBCTF]: Empty LIBCTF. + * configure: Regenerate. + * config.in: Regenerate. + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * ldlang.c (ctf_output): Conditionalize on ENABLE_LIBCTF. + (ldlang_open_ctf): Likewise. + (lang_merge_ctf): Likewise. + (ldlang_ctf_apply_strsym): Likewise. + (lang_write_ctf): Likewise. + (ldlang_write_ctf_late): Likewise. + (ldlang_open_ctf) [!ENABLE_LIBCTF]: Warn about the presence of CTF + sections. + (lang_merge_ctf) [!ENABLE_LIBCTF]: New stub. + (ldlang_ctf_apply_strsym) [!ENABLE_LIBCTF]: Likewise. + (lang_write_ctf) [!ENABLE_LIBCTF]: Likewise. + (ldlang_write_ctf_late) [!ENABLE_LIBCTF]: Likewise. + * ldelfgen.c (ldelf_emit_ctf_early): Conditionalize on + ENABLE_LIBCTF. + (struct ctf_strsym_iter_cb_arg): Likewise. + (ldelf_ctf_strtab_iter_cb): Likewise. + (ldelf_ctf_symbols_iter_cb): Likewise. + (ldelf_examine_strtab_for_ctf): Likewise. + (ldelf_emit_ctf_early) [!ENABLE_LIBCTF]: New stub. + (ldelf_examine_strtab_for_ctf) [!ENABLE_LIBCTF]: New stub. + +2020-06-26 Jan Beulich + + * testsuite/ld-x86-64/x86-64.exp: Run K1OM tests. + +2020-06-26 Pat Bernardi + + * testsuite/ld-m68k/attr-gnu-4-0.s: New file. + * testsuite/ld-m68k/attr-gnu-4-1.s: Likewise. + * testsuite/ld-m68k/attr-gnu-4-2.s: Likewise. + * testsuite/ld-m68k/attr-gnu-4-00.d: Likewise. + * testsuite/ld-m68k/attr-gnu-4-01.d: Likewise. + * testsuite/ld-m68k/attr-gnu-4-02.d: Likewise. + * testsuite/ld-m68k/attr-gnu-4-10.d: Likewise. + * testsuite/ld-m68k/attr-gnu-4-11.d: Likewise. + * testsuite/ld-m68k/attr-gnu-4-12.d: Likewise. + * testsuite/ld-m68k/attr-gnu-4-20.d: Likewise. + * testsuite/ld-m68k/attr-gnu-4-21.d: Likewise. + * testsuite/ld-m68k/attr-gnu-4-22.d: Likewise. + * testsuite/ld-m68k/m68k.exp: Run the new tests. + +2020-06-24 H.J. Lu + + PR ld/26165 + * lexsup.c (ld_options): Correct --dependency-file order. + +2020-06-24 H.J. Lu + + PR ld/26083 + * testsuite/ld-csky/tls-ie-v1.d: Updated. + * testsuite/ld-csky/tls-ie.d: Likewise. + +2020-06-24 H.J. Lu + + PR ld/26083 + * testsuite/ld-cris/libdso-15b.d: Updated. + * testsuite/ld-cris/libdso-1c.d: Likewise. + * testsuite/ld-cris/libdso-1d.d: Likewise. + * testsuite/ld-cris/libdso-15c.d: New file. + +2020-06-24 H.J. Lu + + PR ld/26163 + * ldexp.c (exp_fold_tree_1): Set non_ir_ref_regular on the source + for assignment. + * testsuite/ld-plugin/lto.exp: Run ld/26163 test. + * testsuite/ld-plugin/pr26163a.c: New file. + * testsuite/ld-plugin/pr26163b.c: Likewise. + +2020-06-24 Alan Modra + + * lexsup.c (elf_shlib_list_options): Properly format help message. + (elf_plt_unwind_list_options): Likewise. + * emultempl/cskyelf.em (PARSE_AND_LIST_OPTIONS): Likewise. + +2020-06-23 Roland McGrath + + PR 22843 + * NEWS: Note --dependency-file. + * ld.texi (Options): Document --dependency-file. + * ldlex.h (enum option_values): Add OPTION_DEPENDENCY_FILE. + * ld.h (ld_config_type): New member dependency_file. + * lexsup.c (ld_options, parse_args): Parse --dependency-file. + * ldmain.c (struct dependency_file): New type. + (dependency_files, dependency_files_tail): New static variables. + (track_dependency_files): New function. + (write_dependency_file): New function. + (main): Call it when --dependency-file was passed. + * ldfile.c (ldfile_try_open_bfd): Call track_dependency_files. + (ldfile_open_command_file_1): Likewise. + * ldelf.c (ldelf_try_needed): Likewise. + * pe-dll.c (pe_implied_import_dll): Likewise. + +2020-06-23 Alan Modra + + PR 26150 + * ldlang.c (ldlang_add_file): Assert that we aren't adding the + current end of link.next list again too. + * ldmain.c (add_archive_element): Don't load archive elements + again that have already been loaded. + +2020-06-23 Alan Modra + + * testsuite/ld-elf/shared.exp (pr14170): Clear xfail for + bfin-*-linux*. + (pr17068, symbolic-func.so, pr22374): Likewise. + +2020-06-22 Nelson Chu + + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-01.d: Updated. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-02.d: Updated. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-03.d: Updated. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-04.d: Updated. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-05.d: Updated. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-06.d: Updated. + +2020-06-21 Alan Modra + + * ldfile.c: Replace uses of ENABLE_PLUGINS with BFD_SUPPORTS_PLUGINS. + * ldlang.c: Likewise. + * ldlang.h: Likewise. + * ldlex.h: Likewise. + * ldmain.c: Likewise. + * lexsup.c: Likewise. + * plugin.c: Wrap body of file in #if BFD_SUPPORTS_PLUGINS. + * testplug.c: Likewise. + * testplug2.c: Likewise. + * testplug3.c: Likewise. + * testplug4.c: Likewise. + * configure.ac (ENABLE_PLUGINS): Don't define AM_CONTITIONAL. + * Makefile.am: Remove ENABLE_PLUGINS conditionals. + (PLUGIN_CFLAGS): Don't define. + (PLUGIN_C, PLUGIN_H, PLUGIN_OBJECT): Likewise. Substitute all + uses with plugin file name. + * configure: Regenerate. + * Makefile.in: Regenerate. + +2020-06-20 Alan Modra + + * testsuite/lib/ld-lib.exp (default_ld_compile): Don't perror on + a compiler error. + (default_ld_assemble): Similarly for an assembler error. + (default_ld_nm): Similarly for an nm error. + (run_ld_link_tests): Report ld_assemble errors as a fail. + (check_as_cfi): Remove now unnecessary perror substitution. + * testsuite/ld-elf/exclude.exp: Report ld_nm error return as test + fails rather then unresolved. + * testsuite/ld-gc/gc.exp: Likewise. + * testsuite/ld-scripts/alignof.exp: Likewise. + * testsuite/ld-scripts/defined.exp: Likewise. + * testsuite/ld-scripts/script.exp: Likewise. + * testsuite/ld-scripts/sizeof.exp: Likewise. + * testsuite/ld-selective/selective.exp: Likewise. + * testsuite/ld-scripts/extern.exp: Likewise. Return on ld_link + failure. + * testsuite/ld-elfweak/elfweak.exp: Report compiler errors as + test unresolved. + * testsuite/ld-fastcall/fastcall.exp: Report assember errors as + test fails. + * testsuite/ld-i386/i386.exp (iamcu_tests): Likewise. + * testsuite/ld-ia64/line.exp: Likewise. + * testsuite/ld-mep/mep.exp: Likewise. + * testsuite/ld-mips-elf/mips-elf-flags.exp: Likewise. + * testsuite/ld-nios2/nios2.exp: Likewise. + * testsuite/ld-scripts/alignof.exp: Likewise. + * testsuite/ld-x86-64/line.exp: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-scripts/log2.exp: Formatting. + * testsuite/ld-tic6x/tic6x.exp: Report ld_link errors as a test fail. + +2020-06-20 Alan Modra + + * testsuite/ld-alpha/alpha.exp: Exclude *ecoff targets. + * testsuite/ld-elf/binutils.exp: Likewise. + * testsuite/ld-elf/tls.exp: Likewise. + * testsuite/ld-elf/tls_common.exp: Likewise. + * testsuite/ld-scripts/phdrs2.exp: Likewise. + +2020-06-20 Alan Modra + + * testsuite/ld-sh/sh.exp: Don't run relax tests for non-ELF. + Fail when ld_assemble fails. Use elseif to reduce indentation. + +2020-06-19 Alan Modra + + * testsuite/ld-elf/dynamic-1.rd: Accept st_other notations. + * testsuite/ld-elf/rdynamic-1.rd: Likewise. + * testsuite/ld-elf/pr9676.rd: Likewise. + * testsuite/ld-elf/pr9679.rd: Likewise. + * testsuite/ld-elfvers/vers30.dsym: Likewise. + * testsuite/ld-elfvers/vers31.dsym: Likewise. + * testsuite/ld-plugin/pr22983.1.d: Likewise. + * testsuite/ld-plugin/pr22983.2.d: Likewise. + * testsuite/ld-plugin/pr22983.3.d: Likewise. + * testsuite/ld-plugin/pr22983.4.d: Likewise. + * testsuite/ld-ifunc/ifunc.exp: Exclude alpha. + +2020-06-19 Alan Modra + + * emultempl/elf.em (gld${EMULATION_NAME}_handle_option): Omit + -z relro and -z norelro when target support for GNU_RELRO is lacking. + (gld${EMULATION_NAME}_before_parse): Ignore RELRO default too. + * emultempl/aarch64elf.em (gld${EMULATION_NAME}_before_parse): Ignore + RELRO default when target support for GNU_RELRO is lacking. + * emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): Likewise. + * emultempl/linux.em (gld${EMULATION_NAME}_before_parse): Likewise. + * emultempl/scoreelf.em (gld${EMULATION_NAME}_before_parse): Likewise. + * testsuite/config/default.exp (ld_elf_shared_opt): Don't set. + * testsuite/ld-elf/pr16322.d: xfail when no relro support. + * testsuite/ld-elf/pr22393-1a.d: Likewise. + * testsuite/ld-elf/pr22393-1b.d: Likewise. + * testsuite/ld-elf/shared.exp (pr20995-2.so, pr20995-2): Likewise. + * testsuite/lib/ld-lib.exp (run_ld_link_tests): Use check_relro_support + to decide whether to pass extra ld option "-z norelro". + +2020-06-17 H.J. Lu + + * testsuite/ld-elf/linux-x86.exp (check_pr25749a): Append "-w" + to cflags. + +2020-06-17 H.J. Lu + + * testsuite/ld-elf/linux-x86.exp: Require GCC 5 for Build + pr25749-1b (-pie -fPIE). + +2020-06-16 Alan Modra + + * testsuite/ld-elf/pr23428.c: Define _DEFAULT_SOURCE. + * testsuite/ld-elf/indirect1b.c: Replace asm with __asm__. + * testsuite/ld-elf/indirect2.c: Likewise. + * testsuite/ld-elf/indirect3b.c: Likewise. + * testsuite/ld-elf/indirect4b.c: Likewise. + * testsuite/ld-elf/pr14323-2.c: Likewise. + * testsuite/ld-elf/pr18720b.c: Likewise. + * testsuite/ld-elf/pr19553c.c: Likewise. + * testsuite/ld-elf/pr23428.c: Likewise. + * testsuite/ld-elfvers/vers27b.c: Likewise. + * testsuite/ld-elfvsb/common.c: Likewise. + * testsuite/ld-elfvsb/main.c: Likewise. + * testsuite/ld-elfvsb/sh1.c: Likewise. + * testsuite/ld-elfvsb/test.c: Likewise. + * testsuite/ld-pe/aligncomm-1.c: Likewise. + * testsuite/ld-pe/aligncomm-2.c: Likewise. + * testsuite/ld-pe/aligncomm-3.c: Likewise. + * testsuite/ld-pe/aligncomm-4.c: Likewise. + * testsuite/ld-plugin/pr23958.c: Likewise. + * testsuite/ld-size/size-1b.c: Likewise. + * testsuite/ld-size/size-2b.c: Likewise. + * testsuite/ld-size/size-3a.c: Likewise. + * testsuite/ld-size/size-3b.c: Likewise. + * testsuite/ld-size/size-3c.c: Likewise. + * testsuite/ld-size/size-4b.c: Likewise. + * testsuite/ld-size/size-5b.c: Likewise. + * testsuite/ld-size/size-6a.c: Likewise. + * testsuite/ld-size/size-7a.c: Likewise. + * testsuite/ld-size/size-8a.c: Likewise. + * testsuite/ld-size/size-9b.c: Likewise. + * testsuite/ld-size/size-10b.c: Likewise. + +2020-06-16 Alan Modra + + * emulparams/tic30aout.sh: Delete file. + * scripttempl/tic30aout.sc: Delete file. + * Makefile.am: Remove etic30aout.c from ALL_EMULATION_SOURCES and + delete dependency. + * configure.tgt: Delete tic30-*-*aout* entry. + * testsuite/ld-scripts/sane1.d: Delete tic30-*-aout mention. + * testsuite/ld-scripts/segment-start.d: Likewise. + * Makefile.in: Regenerate. + * po/BLD-POTFILES.in: Regenerate. + +2020-06-15 Max Filippov + + * emultempl/xtensaelf.em (XSHAL_ABI): Remove macro definition. + (XTHAL_ABI_UNDEFINED, XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New + macros. + (elf32xtensa_abi): New declaration. + (xt_config_info_unpack_and_check): Set elf32xtensa_abi if it is + undefined. Use xtensa_abi_choice instead of XSHAL_ABI to test + ABI tag consistency. + (xtensa_add_config_info): Use xtensa_abi_choice instead of + XSHAL_ABI to format ABI tag. + (PARSE_AND_LIST_PROLOGUE): Define OPTION_ABI_WINDOWED, + OPTION_ABI_CALL0 and declare elf32xtensa_abi. + (PARSE_AND_LIST_LONGOPTS): Add entries for --abi-windowed and + --abi-call0. + (PARSE_AND_LIST_OPTIONS): Add help text for --abi-windowed and + --abi-call0. + (PARSE_AND_LIST_ARGS_CASES): Add handlers for --abi-windowed and + --abi-call0. + * ld.texi: Add description for options --abi-windowed and + --abi-call0. + +2020-06-15 Roland McGrath + + * NEWS: Mention -z start-stop-visibility=... option for ELF. + * ld.texi (Options): Document -z start-stop-visibility=... option. + * ldmain.c (main): Initialize link_info.start_stop_visibility. + * emultempl/elf.em (gld${EMULATION_NAME}_handle_option): + Parse -z start-stop-visibility=... option. + +2020-06-15 Alan Modra + + * testsuite/ld-scripts/include.exp: Don't load ld-lib.exp. + * testsuite/ld-scripts/phdrs3.exp: Likewise. + * testsuite/ld-scripts/rgn-at.exp: Likewise. + * testsuite/ld-scripts/rgn-over.exp: Likewise. + * testsuite/ld-scripts/sort.exp: Likewise. + * testsuite/ld-discard/discard.exp: Likewise. Use is_elf_format. + +2020-06-15 Alan Modra + + PR 26103 + * testsuite/ld-linkonce/ref1.s, + * testsuite/ld-linkonce/ref2.s, + * testsuite/ld-linkonce/sym1.s, + * testsuite/ld-linkonce/sym2.s, + * testsuite/ld-linkonce/sym3.s: New test files. + * testsuite/ld-linkonce/linkonce.exp: Run tests for PE too. + Add pr26103 test. Remove unnecessary load_lib. + +2020-06-15 Alan Modra + + * testsuite/ld-linkonce/zeroeh_x.s: Rename from x.s. + * testsuite/ld-linkonce/zeroeh_y.s: Rename from y.s. + * testsuite/ld-linkonce/zeroehl32.d: Adjust for renaming. Support + big-endian output. Run for powerpc. + +2020-06-11 Alan Modra + + * testsuite/ld-plugin/lto.exp (lto_link_tests): Move lto-6, + pr12760, pr23818 and pr23958 tests to.. + (lto_link_elf_tests): ..here. + +2020-06-11 Nick Clifton + + * testsuite/ld-elf/pr26094-1b.c (main): Change return type to + int. + +2020-06-10 Alan Modra + + * testsuite/ld-elf/linux-x86.exp: Build tests when non-native. + (check_pr25749b): Add optional args. Set expected pass file + from args. Run -1b and -2a tests with passall.out. + * testsuite/ld-elf/passall.out: New file. + * testsuite/ld-elf/pr25749-1.c: Adjust to pass with older glibc. + * testsuite/ld-elf/pr25749-2.c: Likewise. + * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Use + regexp_diff to compare expected output from running binary. + +2020-06-10 H.J. Lu + + PR ld/26094 + * testsuite/ld-elf/pr26094-1.ver: New fike. + * testsuite/ld-elf/pr26094-1a.c: Likewise. + * testsuite/ld-elf/pr26094-1a.rd: Likewise. + * testsuite/ld-elf/pr26094-1b.c: Likewise. + * testsuite/ld-elf/pr26094-1b.rd: Likewise. + * testsuite/ld-elf/pr26094-1c.c: Likewise. + * testsuite/ld-elf/shared.exp: Run ld/26094 tests. + +2020-06-09 H.J. Lu + + PR ld/18801 + * testsuite/ld-i386/i386.exp: Run ifunc-textrel-1a, + ifunc-textrel-1b, ifunc-textrel-2a and ifunc-textrel-2b. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/ifunc-textrel-1a.d: Likewise. + * testsuite/ld-i386/ifunc-textrel-1b.d: Likewise. + * testsuite/ld-i386/ifunc-textrel-2a.d: Likewise. + * testsuite/ld-i386/ifunc-textrel-2b.d: Likewise. + * testsuite/ld-x86-64/ifunc-textrel-1.s: Likewise. + * testsuite/ld-x86-64/ifunc-textrel-1a.d: Likewise. + * testsuite/ld-x86-64/ifunc-textrel-1b.d: Likewise. + * testsuite/ld-x86-64/ifunc-textrel-2.s: Likewise. + * testsuite/ld-x86-64/ifunc-textrel-2a.d: Likewise. + * testsuite/ld-x86-64/ifunc-textrel-2b.d: Likewise. + * testsuite/ld-i386/pr18801a.d: Expect warning for IFUNC + resolvers. + * testsuite/ld-i386/pr18801b.d: Likewise. + * estsuite/ld-x86-64/pr18801a.d: Likewise. + * estsuite/ld-x86-64/pr18801b.d: Likewise. + +2020-06-09 Alan Modra + + PR 26065 + * testsuite/ld-elf/shared.exp: Compile dl4main.c -fPIC. + (dl4e, dl4f): Expect dl4a.out. + * testsuite/ld-elf/dl4e.out: Delete. + +2020-06-07 H.J. Lu + + * testsuite/ld-elf/shared.exp: Pass $LFLAGS to PR ld/21703 + shared test. + +2020-06-07 H.J. Lu + + * testsuite/ld-elf/shared.exp: Xfail pr20995/pr20995-2 for + tic6x-*-*. + +2020-06-07 H.J. Lu + + * testsuite/ld-elf/pr11304.d: Skip tic6x-*-elf. + +2020-06-06 Alan Modra + + * testsuite/ld-elf/comm-data.exp: Don't xfail arm or bfin-linux. + +2020-06-06 Alan Modra + + * lexsup.c (ld_options): Accept -plugin and -plugin-opt when + !ENABLE_PLUGINS. + * testsuite/lib/ld-lib.exp (check_plugin_api_available): Adjust. + +2020-06-05 Nelson Chu + + * testsuite/ld-riscv-elf/attr-merge-priv-spec.d: Rename to + attr-merge-priv-spec-01.d. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-c.s: Set spec to 1.11. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-d.s: Empty priv spec set. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-02.d: New testcase. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-03.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-02.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-03.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-04.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-05.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-06.d: Likewise. + * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Updated. + +2020-06-05 Nelson Chu + + * testsuite/ld-riscv-elf/attr-merge-arch-01.d: The CSR isn't used, + so ignore the -mpriv-spec setting. + * testsuite/ld-riscv-elf/attr-merge-arch-02.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-arch-03.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-stack-align.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-01.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-02.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-03.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-04.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-05.d: Likewise. + * testsuite/ld-riscv-elf/call-relax.d: Add -mno-arch-attr. + +2020-06-04 H.J. Lu + + PR ld/26080 + * testsuite/ld-elf/comm-data.exp: Remove copy_reloc. + * testsuite/ld-elf/comm-data2r.rd: Removed. + * testsuite/ld-elf/comm-data2r.sd: Likewise. + * testsuite/ld-elf/comm-data2r.xd: Likewise. + +2020-06-04 Alan Modra + + * testsuite/config/default.exp: Remove global directive outside + proc body. + * testsuite/ld-bootstrap/bootstrap.exp: Likewise. + * testsuite/ld-elf/compress.exp: Likewise. + * testsuite/ld-elf/elf.exp: Likewise. + * testsuite/ld-elf/exclude.exp: Likewise. + * testsuite/ld-elf/frame.exp: Likewise. + * testsuite/ld-elf/indirect.exp: Likewise. + * testsuite/ld-elf/linux-x86.exp: Likewise. + * testsuite/ld-elf/shared.exp: Likewise. + * testsuite/ld-elf/tls.exp: Likewise. + * testsuite/ld-elf/tls_common.exp: Likewise. + * testsuite/ld-elfcomm/elfcomm.exp: Likewise. + * testsuite/ld-elfweak/elfweak.exp: Likewise. + * testsuite/ld-frv/fdpic.exp: Likewise. + * testsuite/ld-frv/tls.exp: Likewise. + * testsuite/ld-gc/gc.exp: Likewise. + * testsuite/ld-i386/i386.exp: Likewise. + * testsuite/ld-i386/no-plt.exp: Likewise. + * testsuite/ld-ifunc/ifunc.exp: Likewise. + * testsuite/ld-mips-elf/mips-elf-flags.exp: Likewise. + * testsuite/ld-nios2/nios2.exp: Likewise. + * testsuite/ld-plugin/lto.exp: Likewise. + * testsuite/ld-plugin/plugin.exp: Likewise. + * testsuite/ld-powerpc/export-class.exp: Likewise. + * testsuite/ld-scripts/align.exp: Likewise. + * testsuite/ld-scripts/crossref.exp: Likewise. + * testsuite/ld-scripts/defined.exp: Likewise. + * testsuite/ld-scripts/overlay-size.exp: Likewise. + * testsuite/ld-scripts/provide.exp: Likewise. + * testsuite/ld-scripts/weak.exp: Likewise. + * testsuite/ld-selective/selective.exp: Likewise. + * testsuite/ld-sh/rd-sh.exp: Likewise. + * testsuite/ld-size/size.exp: Likewise. + * testsuite/ld-srec/srec.exp: Likewise. + * testsuite/ld-x86-64/mpx.exp: Likewise. + * testsuite/ld-x86-64/no-plt.exp: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + +2020-06-04 Alan Modra + + * testsuite/ld-dynamic/export-dynamic-symbol-2.d: Match output for + mips-sgi-irix6. + * testsuite/ld-dynamic/export-dynamic-symbol-glob.d: Likewise. + * testsuite/ld-dynamic/export-dynamic-symbol-list-2.d: Likewise. + * testsuite/ld-dynamic/export-dynamic-symbol-list-glob.d: Likewise. + * testsuite/ld-dynamic/export-dynamic-symbol.exp: Exclude targets + with poor PIE support. + +2020-06-04 Alan Modra + + * testsuite/ld-plugin/lto.exp (pr12758.exe): Add NOPIE_LDFLAGS. + * testsuite/ld-unique/unique.exp: Add NOPIE_LDFLAGS to unique + executable and dynamic executable tests. + +2020-06-03 H.J. Lu + + * testsuite/config/default.exp (NOSANTIZE_CFLAGS): New. + * testsuite/ld-elf/linux-x86.exp: Add $NOSANTIZE_CFLAGS to + tests with run_ld_link_exec_tests. + * testsuite/ld-elf/shared.exp: Add $NOSANTIZE_CFLAGS to tests + with run_ld_link_tests. + * testsuite/ld-elf/tls.exp: Likewise. + * testsuite/ld-elfweak/elfweak.exp: Add $NOSANTIZE_CFLAGS to + tests with ld_link. + * testsuite/ld-gc/gc.exp: Add $NOSANTIZE_CFLAGS to cflags. + * testsuite/ld-plugin/lto.exp: Add $NOSANTIZE_CFLAGS to tests + with run_ld_link_tests.a + * testsuite/ld-plugin/plugin.exp: Append $NOSANTIZE_CFLAGS to + CFLAGS. + * testsuite/ld-selective/selective.exp: Add $NOSANTIZE_CFLAGS + to cflags and cxxflags. + * testsuite/ld-srec/srec.exp: Append $NOSANTIZE_CFLAGS to CC + and CXX. + * testsuite/ld-x86-64/plt-main-ibt-x32.dd: Updated for + -fsanitize=undefined. + * testsuite/ld-x86-64/plt-main-ibt.dd: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Add $NOSANTIZE_CFLAGS to + tests with run_cc_link_tests and run_ld_link_tests. + +2020-06-03 Fangrui Song + H.J. Lu + + PR ld/25910 + * NEWS: Mention --export-dynamic-symbol[-list]. + * ld.texi: Document --export-dynamic-symbol[-list]. + * ldgram.y: Pass current_dynamic_list_p to + lang_append_dynamic_list. + * ldlang.c (current_dynamic_list_p): New. + (ang_append_dynamic_list): Updated to take a pointer to + struct bfd_elf_dynamic_list * argument instead of using + link_info.dynamic_list. + (lang_append_dynamic_list_cpp_typeinfo): Pass + &link_info.dynamic_list to ang_append_dynamic_list. + (lang_append_dynamic_list_cpp_new): Likewise. + * ldlang.h (current_dynamic_list_p): New. + (lang_append_dynamic_list): Add a pointer to + struct bfd_elf_dynamic_list * argument. + * ldlex.h (option_values): Add OPTION_EXPORT_DYNAMIC_SYMBOL and + OPTION_EXPORT_DYNAMIC_SYMBOL_LIST. + * lexsup.c (ld_options): Add entries for + OPTION_EXPORT_DYNAMIC_SYMBOL and + OPTION_EXPORT_DYNAMIC_SYMBOL_LIST. + (parse_args): Handle --export-dynamic-symbol and + --export-dynamic-symbol-list. + * testsuite/ld-dynamic/export-dynamic-symbol-1.d: New. + * testsuite/ld-dynamic/export-dynamic-symbol-2.d: New. + * testsuite/ld-dynamic/export-dynamic-symbol-glob.d: New. + * testsuite/ld-dynamic/export-dynamic-symbol-list-1.d: New. + * testsuite/ld-dynamic/export-dynamic-symbol-list-2.d: New. + * testsuite/ld-dynamic/export-dynamic-symbol-list-glob.d: New. + * testsuite/ld-dynamic/export-dynamic-symbol.exp: New. + * testsuite/ld-dynamic/export-dynamic-symbol.s: New. + * testsuite/ld-dynamic/foo-bar.list: New. + * testsuite/ld-dynamic/foo.list: New. + * testsuite/ld-dynamic/foo.s: New. + * testsuite/ld-dynamic/fstar.list: New. + * testsuite/ld-elf/dlempty.list: New. + * testsuite/ld-elf/shared.exp: Add tests for + --export-dynamic-symbol and --export-dynamic-symbol-list. + +2020-06-03 Jan Beulich + + * testsuite/ld-elf/linux-x86.exp: Make copied source files + writeable. + +2020-05-28 Nick Clifton + + PR 26047 + * ldelf.c (ldelf_after_open): Fail if attempting to link one + executable into another. Ensure that the test is made for all + forms of linking. + +2020-05-28 H.J. Lu + + * NEWS: Mention --enable-textrel-check=yes is default for + Linux/x86 targets. + * configure.tgt (ac_default_ld_textrel_check): Set to yes if + unset for Linux/x86 targets. + +2020-05-28 H.J. Lu + + PR ld/20824 + * NEWS: Mention --enable-textrel-check=[no|yes|warning|error]. + * configure.ac: Add --enable-textrel-check=[no|yes|warning|error]. + (DEFAULT_LD_TEXTREL_CHECK): New AC_DEFINE_UNQUOTED. + (DEFAULT_LD_TEXTREL_CHECK_WARNING): Likewise. + * ldmain.c (main): Initialize link_info.textrel_check to + DEFAULT_LD_TEXTREL_CHECK. + * lexsup.c (ld_options): Check DEFAULT_LD_TEXTREL_CHECK_WARNING. + * config.in: Regenerated. + * configure: Likewise. + +2020-05-28 Nick Clifton + + * lexsup.c (parse_args): Generate an error if a name is not + provided to the -Map option. + (ld_options): Mention that the -Map option supports a directory + name as an argument. + * NEWS: Remove mention of support for an empty string as an + argument to -Map. + * ld.texi: Likewise. + +2020-05-27 Hans-Peter Nilsson + + PR ld/22909 + * testsuite/ld-elf/pr19539.d: Don't xfail for cris*-*-*. + +2020-05-27 Rasmus Villemoes + Nick Clifton + + * lexsup.c (parse_args): If the map filename is defined but empty + create a name based upon the output file name. If the name is + defined but refers to a directory create a file inside the + directory based on the output file name. + * ld.texi: Document the new feature. + * testsuite/ld-script/map-address.exp: Add test of new feature. + * NEWS: Mention the new feature. + +2020-05-27 H.J. Lu + + PR ld/22909 + * NEWS: Mention --warn-textrel. + * ld.texi: Update -z text/notext/textoff. Add --warn-textrel. + Remove --warn-shared-textrel. + * ldlex.h (option_values): Rename OPTION_WARN_SHARED_TEXTREL to + OPTION_WARN_TEXTREL. + * lexsup.c (ld_options): Add --warn-textrel. Obsolete + --warn-shared-textrel. + (parse_args): Updated. + (elf_shlib_list_options): Check link_info.textrel_check. + * emultempl/elf.em: Updated. + * testsuite/ld-elf/pr19539.d: Replace -z notext with + --warn-textrel. Expect a warning. + * testsuite/ld-i386/warn1.d: Update expected warning. + +2020-05-26 H.J. Lu + + * testsuite/ld-ifunc/ifunc-23a-x86.d: Skip *-*-lynxos *-*-nto*. + * testsuite/ld-ifunc/ifunc-24a-x86.d: Likewise. + * testsuite/ld-ifunc/ifunc-25a-x86.d: Likewise. + +2020-05-25 H.J. Lu + + * testsuite/ld-x86-64/x86-64.exp: Pass -z notext to linker. + +2020-05-25 H.J. Lu + + * testsuite/ld-elf/eh6.d: Pass -z notext to linker. + * testsuite/ld-elf/ehdr_start-shared.d: Likewise. + * testsuite/ld-elf/pr19539.d: Likewise. + * testsuite/ld-elfvers/vers.exp: Likewise. + * testsuite/ld-elfvsb/elfvsb.exp: Likewise. + * testsuite/ld-i386/i386.exp: Likewise. + * testsuite/ld-i386/nogot1.d: Likewise. + * testsuite/ld-i386/pr19539.d: Likewise. + * testsuite/ld-i386/pr19636-2a.d: Likewise. + * testsuite/ld-i386/pr19636-2b.d: Likewise. + * testsuite/ld-i386/pr19636-2c.d: Likewise. + * testsuite/ld-i386/pr19636-2d.d: Likewise. + * testsuite/ld-i386/pr19636-2e.d: Likewise. + * testsuite/ld-i386/pr19636-3d.d: Likewise. + * testsuite/ld-i386/pr19636-3e.d: Likewise. + * testsuite/ld-i386/pr19939b.d: Likewise. + * testsuite/ld-i386/undefweaka.d: Likewise. + * testsuite/ld-i386/undefweakb.d: Likewise. + * testsuite/ld-shared/shared.exp: Likewise. + * testsuite/ld-size/size.exp: Likewise. + * testsuite/ld-unique/unique.exp: Likewise. + * testsuite/ld-x86-64/pie1.d: Likewise. + * testsuite/ld-x86-64/pr19539a.d: Likewise. + * testsuite/ld-x86-64/pr19539b.d: Likewise. + * testsuite/ld-x86-64/pr19636-1d.d: Likewise. + * testsuite/ld-x86-64/pr19636-1e.d: Likewise. + * testsuite/ld-x86-64/pr19807-1a.d: Likewise. + * testsuite/ld-x86-64/pr19807-1b.d: Likewise. + * testsuite/ld-x86-64/pr19807-2b.d: Likewise. + * testsuite/ld-x86-64/pr19807-2c.d: Likewise. + * testsuite/ld-x86-64/pr19807-2d.d: Likewise. + * testsuite/ld-x86-64/pr19807-2e.d: Likewise. + * testsuite/ld-x86-64/pr19939b.d: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + +2020-05-24 Fangrui Song + + PR ld/26018 + * lexsup.c (parse_args): Simplify. + * testsuite/ld-elf/dl4e.out: New. + * testsuite/ld-elf/shared.exp: Updated for PR ld/26018 tests. + +2020-05-23 H.J. Lu + + PR ld/26018 + * testsuite/ld-i386/i386.exp: Add a -Bsymbolic-functions test. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr26018.d: New file. + * testsuite/ld-x86-64/pr26018.d: Likewise. + * testsuite/ld-x86-64/pr26018.s: Likewise. + +2020-05-21 Alan Modra + + * deffilep.y: Replace "if (x) free (x)" with "free (x)" thoughout. + * emultempl/elf.em: Likewise. + * emultempl/msp430.em: Likewise. + * emultempl/pe.em: Likewise. + * emultempl/pep.em: Likewise. + * emultempl/ppc64elf.em: Likewise. + * emultempl/xtensaelf.em: Likewise. + * ldelf.c: Likewise. + * ldfile.c: Likewise. + * ldmain.c: Likewise. + * ldmisc.c: Likewise. + * lexsup.c: Likewise. + * pe-dll.c: Likewise. + +2020-05-20 Nelson Chu + + * testsuite/ld-riscv-elf/attr-merge-arch-01.d: Updated + priv attributes according to the -mpriv-spec option. + * testsuite/ld-riscv-elf/attr-merge-arch-02.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-arch-03.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-a.s: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec-b.s: Likewise. + * testsuite/ld-riscv-elf/attr-merge-priv-spec.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-stack-align.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-01.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-02.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-03.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-04.d: Likewise. + * testsuite/ld-riscv-elf/attr-merge-strict-align-05.d: Likewise. + +2020-05-20 Alan Modra + + PR 25993 + * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Don't copy + other_bfd_filename for bfd_set_filename, and test result of + bfd_set_filename call. Don't create a new is->filename, simply + copy from bfd filename. Free new_name after bfd_set_filename. + * emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise. + +2020-05-19 Siddhesh Poyarekar + + * testsuite/ld-aarch64/aarch64-elf.exp: New test + emit-relocs-560. + * testsuite/ld-aarch64/emit-relocs-560.d: New file. + * testsuite/ld-aarch64/emit-relocs-560.s: New file. + +2020-05-19 Alan Modra + + * emultempl/beos.em (sort_by_file_name): Use bfd_get_filename + rather than accessing bfd->filename directly. + * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise. + * emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise. + * emultempl/spuelf.em (embedded_spu_file): Likewise. + * ldlang.c (input_statement_is_archive_path, wild_sort), + (check_excluded_libs): Likewise. + * ldmain.c (add_archive_element): Likewise. + * ldmisc.c (vfinfo): Likewise. + * pe-dll.c (auto_export, generate_edata, pe_create_import_fixup), + (pe_dll_generate_implib, pe_process_import_defs): Likewise. + * plugin.c (plugin_object_p): Likewise. + +2020-05-18 Douglas B Rupp + + * ldemul.h (ldemul_print_symbol): New. + (ld_emulation_xfer_type) + + * ldmain.c (add_archive_element): Fix s/claimi/claim/ typo + in info message. + +2020-05-18 Nick Clifton + + * po/sv.po: Update Swedish translation. + +2020-05-18 Nick Clifton + + PR 25993 + * emultempl/pe.em (_after_open): Check for duplicate filename + pointers before renaming the dll. + * emultempl/pep.em (_after_open): Likewise. + +2020-05-13 Nick Clifton + + PR 25979 + * lexsup.c (elf_shlib_list_options): Include the default value for + the hash style in the output text. + +2020-05-11 Alan Modra + + * testsuite/ld-powerpc/pcrelopt.s: Add lxvp and stxvp. + * testsuite/ld-powerpc/pcrelopt.d: Update. + +2020-05-11 Alan Modra + + * testsuite/ld-powerpc/callstub-1.d: Use -mpower10/-Mpower10 in + place of -mfuture/-Mfuture. + * testsuite/ld-powerpc/notoc2.d: Likewise. + * testsuite/ld-powerpc/powerpc.exp: Likewise. + * testsuite/ld-powerpc/tlsgd.d: Likewise. + * testsuite/ld-powerpc/tlsie.d: Likewise. + * testsuite/ld-powerpc/tlsld.d: Likewise. + +2020-05-11 Nick Clifton + + * po/es.po: Updated Spanish translation. + +2020-05-01 Wilco Dijkstra + + PR ld/25665 + * testsuite/ld-aarch64/farcall-group.s: New large group test. + * testsuite/ld-aarch64/farcall-group.d: New test driver. + * testsuite/ld-aarch64/aarch64-elf.exp: Run the new test. + +2020-05-01 Alan Modra + + PR 25882 + * ldlang.c (lang_check): Call bfd_merge_private_bfd_data for + shared libraries. + +2020-05-01 Alan Modra + + * po/BLD-POTFILES.in: Regenerate. + +2020-04-30 Alex Coplan + + * testsuite/ld-aarch64/erratum843419_tls_ie.d: Use udf in disassembly. + * testsuite/ld-aarch64/farcall-b-section.d: Likewise. + * testsuite/ld-aarch64/farcall-back.d: Likewise. + * testsuite/ld-aarch64/farcall-bl-section.d: Likewise. + +2020-04-30 Nick Clifton + + * testsuite/ld-elf/compress1c.d: XFAIL if thet target linker does + not support the -shared command line option. + * /ld-elf/compressed1c.d: Likewise. + * /ld-elf/compressed1e.d: Likewise. + * /ld-elf/dynamic1.d: Likewise. + * /ld-elf/dynsym1.d: Likewise. + * /ld-elf/ehdr_start-shared.d: Likewise. + * /ld-elf/exclude3b.d: Likewise. + * /ld-elf/global1.d: Likewise. + * /ld-elf/hash.d: Likewise. + * /ld-elf/local1.d: Likewise. + * /ld-elf/mbind1b.d: Likewise. + * /ld-elf/now-1.d: Likewise. + * /ld-elf/now-2.d: Likewise. + * /ld-elf/now-3.d: Likewise. + * /ld-elf/now-4.d: Likewise. + * /ld-elf/pr12975.d: Likewise. + * /ld-elf/pr13177.d: Likewise. + * /ld-elf/pr13195.d: Likewise. + * /ld-elf/pr16322.d: Likewise. + * /ld-elf/pr16498a.d: Likewise. + * /ld-elf/pr16498b.d: Likewise. + * /ld-elf/pr17615.d: Likewise. + * /ld-elf/pr19162.d: Likewise. + * /ld-elf/pr19698.d: Likewise. + * /ld-elf/pr20513c.d: Likewise. + * /ld-elf/pr20513d.d: Likewise. + * /ld-elf/pr21389a.d: Likewise. + * /ld-elf/pr21389b.d: Likewise. + * /ld-elf/pr21389c.d: Likewise. + * /ld-elf/pr21562a.d: Likewise. + * /ld-elf/pr21562b.d: Likewise. + * /ld-elf/pr21562c.d: Likewise. + * /ld-elf/pr21562d.d: Likewise. + * /ld-elf/pr21562e.d: Likewise. + * /ld-elf/pr21562f.d: Likewise. + * /ld-elf/pr21562g.d: Likewise. + * /ld-elf/pr21562h.d: Likewise. + * /ld-elf/pr21562i.d: Likewise. + * /ld-elf/pr21562j.d: Likewise. + * /ld-elf/pr21562k.d: Likewise. + * /ld-elf/pr21562l.d: Likewise. + * /ld-elf/pr21562m.d: Likewise. + * /ld-elf/pr21562n.d: Likewise. + * /ld-elf/pr21903a.d: Likewise. + * /ld-elf/pr21903b.d: Likewise. + * /ld-elf/pr22269b.d: Likewise. + * /ld-elf/pr22393-1a.d: Likewise. + * /ld-elf/pr22393-1b.d: Likewise. + * /ld-elf/pr23658-1c.d: Likewise. + * /ld-elf/pr25708.d: Likewise. + * /ld-elf/rpath-1.d: Likewise. + * /ld-elf/rpath-2.d: Likewise. + * /ld-elf/runpath-1.d: Likewise. + * /ld-elf/runpath-2.d: Likewise. + * /ld-elf/sizeofb.d: Likewise. + * /ld-elf/startofb.d: Likewise. + * /ld-elf/strtab.d: Likewise. + * /ld-elf/textaddr2.d: Likewise. + * /ld-elf/textaddr5.d: Likewise. + * /ld-elf/textaddr6.d: Likewise. + * /ld-elf/unknown2.d: Likewise. + * /ld-undefined/entry-3.d: Likewise. + * /ld-undefined/entry-4.d: Likewise. + * /ld-elf/mbind1c.d: XFAIL if the target linker does not support + the -pie option. + * /ld-elf/pie.d: Likewise. + * /ld-elf/pr19539.d: Likewise. + * /ld-elf/pr21903d.d: Likewise. + * /ld-elf/pr22269a.d: Likewise. + * /ld-elf/pr22393-1c.d: Likewise. + * /ld-elf/pr22393-1d.d: Likewise. + * /ld-elf/pr22423.d: Likewise. + * /ld-elf/loadaddr1.d: Expect to fail on the rx-linux target. + * /ld-elf/loadaddr2.d: Likewise. + * /ld-elf/pr22393-1e.d: Likewise. + * /ld-elf/pr22393-1f.d: Likewise. + * /ld-elf/textaddr1.d: Likewise. + * /ld-elf/textaddr4.d: Likewise. + +2020-04-30 Yoshinori Sato + + * emulparams/elf32rx_linux.sh: New rx-linux emulation. + * emultempl/rxlinux.em: New. + * configure.tgt: Add rx-linux. + * Makefile.am: Add eelf32rx_linux.c + * Makefile.in: Regenerate. + +2020-04-29 Max Filippov + + * testsuite/ld-xtensa/relax-diff1.d: New test definition. + * testsuite/ld-xtensa/relax-diff1.s: New test source. + * testsuite/ld-xtensa/relax-ndiff.d: New test definition. + * testsuite/ld-xtensa/relax-ndiff.s: New test source. + * testsuite/ld-xtensa/xtensa.exp: (relax-diff1) + (relax-ndiff): New tests. + +2020-04-29 Stephen Casner + + PR 25829 + * testsuite/ld-scripts/default-script.exp: Add --image-base=0 to + LDFLAGS for targets *-*-mingw64 x86_64-*-cygwin. + * testsuite/ld-scripts/default-script1.d: No longer have to skip + test for those targets. + * testsuite/ld-scripts/default-script2.d: Likewise. + * testsuite/ld-scripts/default-script3.d: Likewise. + * testsuite/ld-scripts/default-script4.d: Likewise. + +2020-04-27 Tamar Christina + + * pe-dll.c (pe_detail_list): Add pe-bigobj-i386. + +2020-04-22 Max Filippov + + PR ld/25861 + * testsuite/ld-xtensa/relax-loc.d: New test definition. + * testsuite/ld-xtensa/relax-loc.s: New test source. + * testsuite/ld-xtensa/xtensa.exp (relax-loc): New test. + +2020-04-22 Fangrui Song + + PR ld/25806 + * ldlang.h (struct lang_input_statement_struct): Add extra_search_path. + * ldlang.c (current_input_file): New. + (ldirname): New. + (new_afile): Add from_filename parameter. Set extra_search_path. + (lang_add_input_file): Pass current_input_file to new_afile. + (load_symbols): Set current_input_file. + * ldfile.c (ldfile_open_file): If extra_search_path has been set + then scan it for the file that needs to be opened. + * ld.texi: Document the new behaviour. + * NEWS: Mention the new feature. + +2020-04-22 Alan Modra + + * testsuite/ld-scripts/default-script1.d: Correct mingw skip. + * testsuite/ld-scripts/default-script2.d: Likewise. + * testsuite/ld-scripts/default-script3.d: Likewise. + * testsuite/ld-scripts/default-script4.d: Likewise. + +2020-04-21 Stephen Casner + + PR 25829 + * testsuite/ld-scripts/script.exp (check_script) + (extract_symbol_test): Make test addresses fit in 16 bits. + * testsuite/ld-scripts/memory.t: Likewise. + * testsuite/ld-scripts/memory_sym.t (TXT_LENGTH): Likewise. + * testsuite/ld-scripts/default-script.t (_START): Likewise. + * testsuite/ld-scripts/default-script1.d: Likewise. + * testsuite/ld-scripts/default-script2.d: Likewise. + * testsuite/ld-scripts/default-script3.d: Likewise. + * testsuite/ld-scripts/default-script4.d: Likewise. + * testsuite/ld-scripts/empty-address-1.t: Likewise. + * testsuite/ld-scripts/empty-address-1.d: Likewise. + * testsuite/ld-scripts/empty-address-2a.d: Likewise. + * testsuite/ld-scripts/empty-address-2b.d: Likewise. + * testsuite/ld-misc/start.s: .long -> .dc.a to allow relocation to + fit target address size. + * testsuite/ld-scripts/empty-address-1.s: Likewise. + * testsuite/ld-scripts/empty-address-2.s: Likewise. + +2020-04-21 H.J. Lu + + PR ld/25849 + * ldelfgen.c (ldelf_map_segments): Call + elf_backend_strip_zero_sized_dynamic_sections. + * testsuite/ld-alpha/tlsbinr.rd: Updated. + +2020-04-20 Alan Modra + + * testsuite/ld-powerpc/tlsopt5.s: Rename foo to aaaaa. + * testsuite/ld-powerpc/tlsopt5.d: Adjust to suit. + * testsuite/ld-powerpc/tlsopt6.d: Likewise. + +2020-04-18 Rainer Orth + + * testsuite/ld-elf/warn1.d: Don't xfail on 64-bit Solaris/SPARC. + * testsuite/ld-elf/warn2.d: Likewise. + +2020-04-18 H.J. Lu + + * testsuite/ld-elf/elf.exp (ASFLAGS): Add "--defsym NO_SET=1" for + alpha target. + * testsuite/ld-elf/pr19789.s: Use "=" if NO_SET is defined. + +2020-04-16 Stephen Casner + + PR 18963 + * testsuite/ld-scripts/pr18963.t: Reduce section sizes to fit in + 16-bit address space. + * testsuite/ld-scripts/pr18963.d: Likewise. + +2020-04-17 Juan Manuel Guerrero + Jan W. Jagersma + + * scripttempl/i386go32.sc: Provide symbol _environ. Link in + .ctors and .dtors. Discard LTO sections. + +2020-04-17 Nick Clifton + + * testsuite/config/default.exp: If not already set then create the + CCC_OVERRIDE_OPTIONS environment variable to help when running the + testsuite with clang. + * testsuite/ld-elf/pr22269-1.c: Add a missing return statement. + * testsuite/ld-elfvers/vers.exp: Add checks to detect if files + were built before attempting to copy them. + +2020-04-15 Fangrui Song + + PR binutils/24613 + * lexsup.c (parse_args): Change RM_GENERATE_WARNING and + RM_GENERATE_ERROR to RM_DIAGNOSE. + * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Change + RM_GENERATE_ERROR to RM_DIAGNOSE. + * emultempl/elf.em (ld_${EMULATION_NAME}_emulation): Likewise. + +2020-04-14 Stephen Casner + + PR ld/25677 + * emulparams/pdp11.sh (SCRIPT_NAME): Change to pdp11. + (EXTRA_EM_FILE): New, add emulation file pdp11. + * scripttempl/pdp11.sc: New, derived from aout.sc without + irrelevant input sections. + * emultempl/pdp11.em (_add_options, _handle_option) + (_list_options): New. Add options -z, --imagic for pdp11-aout. + (_before_parse): Make --omagic be default instead of --nmagic. + (_get_script): Modify special-case linker script for --imagic. + * lexsup.c (parse_args): Explictly set config.text_read_only for -n. + * ld.texi (Options): Add documentation of PDP11-specific options. + (Options): Fix unrelated typo to --no-compact-branches. + * gen-doc.texi: @set PDP11. + * testsuite/ld-pdp11/pdp11.exp: New, start pdp11 testing. + * testsuite/ld-pdp11/sections.s: New, source for options tests. + * testsuite/ld-pdp11/imagic.d: New, test --imagic format. + * testsuite/ld-pdp11/imagicz.d: New, test -z (imagic) format. + * testsuite/ld-pdp11/nmagic.d: New, test --nmagic format. + * testsuite/ld-pdp11/omagic.d: New, test --omagic format. + +2020-04-14 H.J. Lu + + PR binutils/25707 + * testsuite/ld-arm/armthumb-lib.sym: Updated. + * testsuite/ld-arm/farcall-mixed-app.sym: Likewise. + * testsuite/ld-arm/farcall-mixed-app2.sym: Likewise. + * testsuite/ld-arm/fdpic-main-m.sym: Likewise. + * testsuite/ld-arm/fdpic-main.sym: Likewise. + * testsuite/ld-arm/fdpic-shared-m.sym: Likewise. + * testsuite/ld-arm/fdpic-shared.sym: Likewise. + * testsuite/ld-arm/mixed-app.sym: Likewise. + * testsuite/ld-arm/mixed-lib.sym: Likewise. + * testsuite/ld-arm/preempt-app.sym: Likewise. + * testsuite/ld-elf/hash.d: Likewise. + * testsuite/ld-elf/pr13195.d: Likewise. + * testsuite/ld-elfvsb/hidden2.d: Likewise. + * testsuite/ld-mips-elf/hash2.d: Likewise. + +2020-04-10 Rainer Orth + + * testsuite/ld-shared/shared.exp: Remove dangling comments. + xfail shared non PIC tests on Solaris. + +2020-04-09 Rainer Orth + + * testsuite/ld-elf/shared.exp: Add -Av9 to AFLAGS_PIC on sparc*-*-*. + +2020-04-02 H.J. Lu + + * testsuite/config/default.exp (NOCF_PROTECTION_CFLAGS): Replace + nopie with available. + +2020-04-02 H.J. Lu + + * testsuite/config/default.exp (NOCF_PROTECTION_CFLAGS): New. + Set to "-fcf-protection=none" if target compiler supports it. + * testsuite/ld-srec/srec.exp: Add $NOCF_PROTECTION_CFLAGS to + CC and CXX. + * testsuite/ld-x86-64/x86-64.exp: Add $NOCF_PROTECTION_CFLAGS + to PLT BND tests. + +2020-04-02 H.J. Lu + + * testsuite/ld-elf/linux-x86.exp (check_pr25749a): Compile with + -I../bfd. + (check_pr25749b): Likewise. + +2020-04-02 Rainer Orth + + * testsuite/ld-ifunc/ifunc-10-i386.d: Remove *-*-solaris2* from + notarget. + * ifunc-11-i386.d: Likewise. + * ifunc-12-i386.d: Likewise. + * ifunc-13-i386.d: Likewise. + * ifunc-14a-i386.d: Likewise. + * ifunc-14b-i386.d: Likewise. + * ifunc-14c-i386.d: Likewise. + * ifunc-14d-i386.d: Likewise. + * ifunc-14e-i386.d: Likewise. + * ifunc-14f-i386.d: Likewise. + * ifunc-15-i386.d: Likewise. + * ifunc-16-i386-now.d: Likewise. + * ifunc-16-i386.d: Likewise. + * ifunc-17a-i386.d: Likewise. + * ifunc-17b-i386.d: Likewise. + * ifunc-18a-i386.d: Likewise. + * ifunc-18b-i386.d: Likewise. + * ifunc-19a-i386.d: Likewise. + * ifunc-19b-i386.d: Likewise. + * ifunc-2-i386-now.d: Likewise. + * ifunc-2-i386.d: Likewise. + * ifunc-2-local-i386-now.d: Likewise. + * ifunc-2-local-i386.d: Likewise. + * ifunc-20-i386.d: Likewise. + * ifunc-21-i386.d: Likewise. + * ifunc-22-i386.d: Likewise. + * ifunc-5a-i386.d: Likewise. + * ifunc-5a-local-i386.d: Likewise. + * ifunc-5b-i386.d: Likewise. + * ifunc-5b-local-i386.d: Likewise. + * ifunc-5r-local-i386.d: Likewise. + * ifunc-6a-i386.d: Likewise. + * ifunc-6b-i386.d: Likewise. + * ifunc-7a-i386.d: Likewise. + * ifunc-7b-i386.d: Likewise. + * ifunc-8-i386.d: Likewise. + * ifunc-9-i386.d: Likewise. + * pr17154-i386-now.d: Likewise. + * pr17154-i386.d: Likewise. + + * ifunc-23a-x86.d: Remove notarget. + * ifunc-24a-x86.d: Likewise. + * ifunc-25a-x86.d: Likewise. + +2020-04-02 Nick Clifton + + PR ld/25747 + * ldfile.c (ldfile_open_file): Fix typo in warning message. + +2020-04-01 H.J. Lu + + PR ld/25749 + PR ld/25754 + * testsuite/ld-elf/linux-x86.exp: Run ld/25749 tests. + * testsuite/ld-elf/pr25749-1.c: New file. + * testsuite/ld-elf/pr25749-1a.c: Likewise. + * testsuite/ld-elf/pr25749-1b.c: Likewise. + * testsuite/ld-elf/pr25749-1b.err: Likewise. + * testsuite/ld-elf/pr25749-1c.c: Likewise. + * testsuite/ld-elf/pr25749-1d.c: Likewise. + * testsuite/ld-elf/pr25749-2.c: Likewise. + * testsuite/ld-elf/pr25749-2a.s: Likewise. + * testsuite/ld-elf/pr25749-2b.s: Likewise. + * testsuite/ld-elf/pr25749.rd: Likewise. + * testsuite/ld-elf/pr25754-1a.c: Likewise. + * testsuite/ld-elf/pr25754-1b.s: Likewise. + * testsuite/ld-elf/pr25754-2a.c: Likewise. + * testsuite/ld-elf/pr25754-2b.err: Likewise. + * testsuite/ld-elf/pr25754-2b.s: Likewise. + * testsuite/ld-elf/pr25754-3a.c: Likewise. + * testsuite/ld-elf/pr25754-3b.s: Likewise. + * testsuite/ld-elf/pr25754-4a.c: Likewise. + * testsuite/ld-elf/pr25754-4b.s: Likewise. + * testsuite/ld-elf/pr25754-4c.s: Likewise. + * testsuite/ld-elf/pr25754-5a.c: Likewise. + * testsuite/ld-elf/pr25754-5b.s: Likewise. + * testsuite/ld-elf/pr25754-5c.s: Likewise. + * testsuite/ld-elf/pr25754-6a.c: Likewise. + * testsuite/ld-elf/pr25754-6b.s: Likewise. + * testsuite/ld-x86-64/pr19609-6a.d: Don't expect linker error. + +2020-04-01 Tamar Christina + + PR ld/16017 + * testsuite/ld-arm/arm-elf.exp (thumb-plt, thumb-plt-got): Skip for NaCL. + +2020-04-01 Nick Clifton + + PR ld/25747 + * ldfile.c (ldfile_open_file): If a search for a library fails, + but there is a file that would match if it had a "lib" prefix to + its name, then tell the user. + +2020-04-01 Tamar Christina + + PR ld/16017 + * testsuite/ld-arm/arm-elf.exp (thumb-plt-got): New. + * testsuite/ld-arm/thumb-plt-got.d: New test. + +2020-04-01 Tamar Christina + + * testsuite/ld-arm/arm-elf.exp (thumb-plt): New. + * testsuite/ld-arm/thumb-plt.d: New test. + * testsuite/ld-arm/thumb-plt.s: New test. + +2020-04-01 Hans-Peter Nilsson + + * testsuite/ld-scripts/defined4.d: Don't xfail mmix-*-*. + +2020-03-30 Nick Clifton + + PR binutils/25662 + * emultempl/pe.em (after_open): Replace initialisation of the + insert_timestamp field in the pe_data structure with an + initialisation of the timestamp field. + * emultemp/pep.em: Likewise. + * pe-dll.c (fill_edata): Use the timestamp field in the pe_data + structure instead of the insert_timestamp field. + +2020-03-28 H.J. Lu + + PR 25732 + * emulparams/elf_i386_ldso.sh (COMMONPAGESIZE): New. + * testsuite/ld-elf/shared.exp:Don't xfail pr20995-2 tests for + Solaris. + +2020-03-27 H.J. Lu + + PR 25732 + * testsuite/ld-elf/shared.exp: Xfail pr20995-2 tests for Solaris. + +2020-03-27 H.J. Lu + + PR 25732 + * testsuite/ld-ifunc/ifunc-23a-x86.d: Add notarget for Solaris. + * testsuite/ld-ifunc/ifunc-24a-x86.d: Likewise. + * testsuite/ld-ifunc/ifunc-25a-x86.d: Likewise. + +2020-03-25 Alan Modra + + * testsuite/ld-elf/compress1c.d: xfail h8300. + * testsuite/ld-elf/compressed1c.d: Likewise. + * testsuite/ld-elf/compressed1e.d: Likewise. + * testsuite/ld-elf/dynamic1.d: Likewise. + * testsuite/ld-elf/dynsym1.d: Likewise. + * testsuite/ld-elf/ehdr_start-shared.d: Likewise. + * testsuite/ld-elf/exclude3b.d: Likewise. + * testsuite/ld-elf/export-class.exp: Don't run without -shared support. + * testsuite/ld-elf/global1.d: xfail h8300. + * testsuite/ld-elf/hash.d: Likewise. + * testsuite/ld-elf/loadaddr1.d: Likewise. + * testsuite/ld-elf/loadaddr2.d: Likewise. + * testsuite/ld-elf/local1.d: Likewise. + * testsuite/ld-elf/mbind1b.d: Likewise. + * testsuite/ld-elf/mbind1c.d: Likewise. + * testsuite/ld-elf/now-1.d: Likewise. + * testsuite/ld-elf/now-2.d: Likewise. + * testsuite/ld-elf/now-3.d: Likewise. + * testsuite/ld-elf/now-4.d: Likewise. + * testsuite/ld-elf/pie.d: Likewise. + * testsuite/ld-elf/pr12975.d: Likewise. + * testsuite/ld-elf/pr13177.d: Likewise. + * testsuite/ld-elf/pr13195.d: Likewise. + * testsuite/ld-elf/pr16322.d: Likewise. + * testsuite/ld-elf/pr16498a.d: Likewise. + * testsuite/ld-elf/pr16498b.d: Likewise. + * testsuite/ld-elf/pr17615.d: Likewise. + * testsuite/ld-elf/pr19162.d: Likewise. + * testsuite/ld-elf/pr19539.d: Likewise. + * testsuite/ld-elf/pr19617a.d: Likewise. + * testsuite/ld-elf/pr19698.d: Likewise. + * testsuite/ld-elf/pr20513c.d: Likewise. + * testsuite/ld-elf/pr20513d.d: Likewise. + * testsuite/ld-elf/pr21389a.d: Likewise. + * testsuite/ld-elf/pr21389b.d: Likewise. + * testsuite/ld-elf/pr21389c.d: Likewise. + * testsuite/ld-elf/pr21562a.d: Likewise. + * testsuite/ld-elf/pr21562b.d: Likewise. + * testsuite/ld-elf/pr21562c.d: Likewise. + * testsuite/ld-elf/pr21562d.d: Likewise. + * testsuite/ld-elf/pr21562e.d: Likewise. + * testsuite/ld-elf/pr21562f.d: Likewise. + * testsuite/ld-elf/pr21562g.d: Likewise. + * testsuite/ld-elf/pr21562h.d: Likewise. + * testsuite/ld-elf/pr21562i.d: Likewise. + * testsuite/ld-elf/pr21562j.d: Likewise. + * testsuite/ld-elf/pr21562k.d: Likewise. + * testsuite/ld-elf/pr21562l.d: Likewise. + * testsuite/ld-elf/pr21562m.d: Likewise. + * testsuite/ld-elf/pr21562n.d: Likewise. + * testsuite/ld-elf/pr21903a.d: Likewise. + * testsuite/ld-elf/pr21903b.d: Likewise. + * testsuite/ld-elf/pr21903d.d: Likewise. + * testsuite/ld-elf/pr22269a.d: Likewise. + * testsuite/ld-elf/pr22269b.d: Likewise. + * testsuite/ld-elf/pr22393-1a.d: Likewise. + * testsuite/ld-elf/pr22393-1b.d: Likewise. + * testsuite/ld-elf/pr22393-1c.d: Likewise. + * testsuite/ld-elf/pr22393-1d.d: Likewise. + * testsuite/ld-elf/pr22393-1e.d: Likewise. + * testsuite/ld-elf/pr22393-1f.d: Likewise. + * testsuite/ld-elf/pr22423.d: Likewise. + * testsuite/ld-elf/pr22450.d: xfail avr, crx, h8300, ip2k, m68hc11, + and xc16x. + * testsuite/ld-elf/pr23658-1c.d: xfail h8300. + * testsuite/ld-elf/pr25708.d: xfail h8300 and hppa64. + * testsuite/ld-elf/rpath-1.d: xfail h8300. + * testsuite/ld-elf/rpath-2.d: Likewise. + * testsuite/ld-elf/runpath-1.d: Likewise. + * testsuite/ld-elf/runpath-2.d: Likewise. + * testsuite/ld-elf/sizeofb.d: Likewise. + * testsuite/ld-elf/startofb.d: Likewise. + * testsuite/ld-elf/strtab.d: Likewise. + * testsuite/ld-elf/textaddr1.d: Likewise. + * testsuite/ld-elf/textaddr2.d: Likewise. + * testsuite/ld-elf/textaddr4.d: Likewise. + * testsuite/ld-elf/textaddr5.d: Likewise. + * testsuite/ld-elf/textaddr6.d: Likewise. + * testsuite/ld-elf/unknown2.d: Likewise. + * testsuite/ld-undefined/entry-3.d: Likewise. + * testsuite/ld-undefined/entry-4.d: Likewise. + * testsuite/ld-h8300/h8300.exp: Pass appropriate ld -m option. + * testsuite/ld-h8300/gcsection.d: Remove ld -m option and relax + file format match. + * testsuite/ld-h8300/relax-2.d: Likewise. + * testsuite/ld-h8300/relax-3.d: Likewise. + * testsuite/ld-h8300/relax-4.d: Likewise. + * testsuite/ld-h8300/relax-5.d: Likewise. + * testsuite/ld-h8300/relax-6.d: Likewise. + * testsuite/ld-h8300/relax-7.d: Likewise. + * testsuite/ld-h8300/relax.d: Relax file format match. + +2020-03-24 H.J. Lu + + PR binutils/25708 + * testsuite/ld-elf/pr25708.d: New file. + +2020-03-23 Alan Modra + + * Makefile.am (ALL_EMULATION_SOURCES): Reinstate ei386aout.c. + Include ei386aout dep file. + * Makefile.in: Regenerate. + * po/BLD-POTFILES.in: Regenerate. + +2020-03-20 H.J. Lu + + * testsuite/ld-plugin/lto.exp (lto_link_tests): Run PR ld/25355 + test only for GCC 10 or newer. + +2020-03-20 Alan Modra + + * testplug.c (parse_symdefstr): Use %hhi to read sym->def, and + clear new fields. + * testplug2.c (parse_symdefstr): Likewise. + * testplug3.c (parse_symdefstr): Likewise. + * testplug4.c (parse_symdefstr): Likewise. + +2020-03-18 Christophe Lyon + + * testsuite/ld-arm/non-contiguous-arm4.d: Fix expected output. + * testsuite/ld-powerpc/non-contiguous-powerpc.d: Likewise. + +2020-03-18 Christophe Lyon + + * emultempl/xtensaelf.em: Emit a fatal error message + instead of calling abort. + * ldlang.c: Likewise. + +2020-03-14 Alan Modra + + * testsuite/ld-elf/non-contiguous.d: Don't xfail generic ELF + targets. Don't skip xtensa, xfail instead. + +2020-03-13 Christophe Lyon + + * ldlang.c (lang_add_section): Add support for + non_contiguous_regions. + (size_input_section): Likewise. + (lang_size_sections_1): Likewise. + (process_insert_statements): Likewise. + * ldlex.h (option_values): Add OPTION_NON_CONTIGUOUS_REGIONS and + OPTION_NON_CONTIGUOUS_REGIONS_WARNINGS. + * lexsup.c (ld_options): Add entries for + --enable-non-contiguous-regions and + --enable-non-contiguous-regions-warnings. + (parse_args): Handle it. + * NEWS: Add --enable-non-contiguous-regions and + --enable-non-contiguous-regions-warnings. + * ld.texi: Add --enable-non-contiguous-regions and + --enable-non-contiguous-regions-warnings documentation. + * emultempl/armelf.em (elf32_arm_add_stub_section): Add + SEC_LINKER_CREATED flag. + * emultempl/xtensaelf.em (ld_build_required_section_dependence): + Emit an error when --enable-non-contiguous-regions is used. + * testsuite/ld-elf/non-contiguous.d: New. + * testsuite/ld-elf/non-contiguous.ld: New. + * testsuite/ld-elf/non-contiguous.s: New. + * testsuite/ld-arm/arm-elf.exp: Run the new tests. + * testsuite/ld-arm/arm-elf/non-contiguous-arm.s: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm.d: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm.ld: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm2.d: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm3.ld: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm3.d: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm3.ld: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm4.d: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm4.ld: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm5.d: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm5.ld: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm6.d: New. + * testsuite/ld-arm/arm-elf/non-contiguous-arm6.ld: New. + * testsuite/ld-powerpc/powerpc.exp: Run new tests. + * testsuite/ld-powerpc/non-contiguous-powerpc.d: New. + * testsuite/ld-powerpc/non-contiguous-powerpc.ld: New. + * testsuite/ld-powerpc/non-contiguous-powerpc.sd: New. + * testsuite/ld-powerpc/non-contiguous-powerpc64.d: New. + +2020-03-13 H.J. Lu + + PR ld/24920 + * emulparams/elf32_x86_64.sh: Use static.sh. + * emulparams/elf_i386.sh: Likewise. + * emulparams/elf_x86_64.sh: Likewise. + * emulparams/static.sh: New file. + * emultempl/elf-x86.em: Include "ldlex.h". + * testsuite/ld-elf/pr24920.err: New file. + * testsuite/ld-elf/linux-x86.exp: Run ld/24920 tests. + +2020-03-13 Christian Eggers + + * ldexp.c (fold_name): Return SIZEOF_HEADERS in bytes. + +2020-03-11 Alan Modra + + * ldelf.c (elf_orphan_compatible): Return false when two sections + have differing SHF_MASKPROC or SHF_MASKOS flags. + +2020-03-05 Alan Modra + + PR 25570 + * ldlang.c (lang_size_sections_1): Don't report changes on + second and subsequent iterations that make no change in + alignment from that already reported. + +2020-03-05 Alan Modra + + PR 25570 + * ldlang.c (lang_sizing_iteration): New static var. + (lang_size_sections_1): Warn about no memory region only on first + iteration. Warn about changing start address on first iteration + then any delta from that on subsequent iterations. Report a signed + delta. + (one_lang_size_sections_pass): Increment lang_sizing_iteration. + +2020-03-03 Nick Clifton + + PR 25588 + * ld.texi (Options): Update the description of the --rpath-link + option. + +2020-03-02 Alan Modra + + * plugin.c (plugin_object_p): Return a bfd_cleanup. + (plugin_cleanup): New function. + +2020-03-01 H.J. Lu + + PR ld/25618 + * plugin.c (plugin_object_p): Copy the no_export field to the IR + dummy object. + * testsuite/ld-plugin/lto.exp (lto_link_elf_tests): Add + PR ld/25618 tests. + * testsuite/ld-plugin/pr25618.d: New file. + * testsuite/ld-plugin/pr25618a.cc: Likewise. + * testsuite/ld-plugin/pr25618a.h: Likewise. + * testsuite/ld-plugin/pr25618b.cc: Likewise. + * testsuite/ld-plugin/pr25618b.h: Likewise. + +2020-02-27 Alan Modra + + PR 24511 + * testsuite/ld-mmix/b-fixo2.d: Adjust for .data change. + * testsuite/ld-mmix/sec-2.d: Likewise. + * testsuite/ld-mmix/sec-3.d: Likewise. + * testsuite/ld-mmix/sec-4.d: Likewise. + * testsuite/ld-mmix/spec802.d: Likewise. + * testsuite/ld-mmix/spec803.d: Likewise. + * testsuite/ld-mmix/spec804.d: Likewise. + * testsuite/ld-mmix/spec805.d: Likewise. + * testsuite/ld-mmix/spec806.d: Likewise. + * testsuite/ld-mmix/spec807.d: Likewise. + * testsuite/ld-mmix/spec808.d: Likewise. + +2020-02-26 H.J. Lu + + PR ld/25593 + * testsuite/ld-plugin/lto.exp: Run PR ld/25593 tests. + * testsuite/ld-plugin/pr25593.d: New file. + * testsuite/ld-plugin/pr25593a-1.c: Likewise. + * testsuite/ld-plugin/pr25593a-2.c: Likewise. + * testsuite/ld-plugin/pr25593b.c: Likewise. + * testsuite/ld-plugin/pr25593c.c: Likewise. + * testsuite/ld-plugin/pr25593d.c: Likewise. + * testsuite/ld-plugin/pr25593e.c: Likewise. + +2020-02-26 Alan Modra + + * emultempl/cskyelf.em: Indent labels correctly. + * ldfile.c: Likewise. + * ldlang.c: Likewise. + * plugin.c: Likewise. + +2020-02-26 Alan Modra + + PR 25593 + * ldelf.c (ldelf_try_needed): Add DT_NEEDED lib to input_bfds. + (ldelf_after_open): Save state of input_bfds list before loading + DT_NEEDED libs. Traverse input_bfds list adding DT_NEEDED tags. + Restore input_bfds list. + * testsuite/ld-cris/gotplt1.d: Adjust for changed .dynstr order. + +2020-02-24 Nick Clifton + + * po/fr.po: Update French translation. + +2020-02-22 Alan Modra + + PR 25585 + * NEWS: Mention better "PHDR segment not covered by LOAD segment" + checking. + +2020-02-19 Sergey Belyashov + + PR 25537 + * emultempl/z80.em: Remove machine compatability checking. + +2020-02-19 Sergey Belyashov + + PR 25517 + * testsuite/ld-z80/arch_ez80_adl.d: Update command line. + * testsuite/ld-z80/arch_ez80_z80.d: Likewise. + * testsuite/ld-z80/arch_r800.d: Likewise. + * testsuite/ld-z80/arch_z180.d: Likewise. + * testsuite/ld-z80/arch_z80n.d: Likewise. + * testsuite/ld-z80/comb_arch_ez80_z80.d: Likewise. + * testsuite/ld-z80/comb_arch_z180_z80.d: Likewise. + * testsuite/ld-z80/comb_arch_z80_ez80.d: Likewise. + * testsuite/ld-z80/comb_arch_z80_z180.d: Likewise. + * testsuite/ld-z80/comb_arch_z80_z80n.d: Likewise. + * testsuite/ld-z80/relocs_b_ez80.d: Likewise. + * testsuite/ld-z80/relocs_b_z80.d: Likewise. + * testsuite/ld-z80/relocs_f_ez80.d: Likewise. + * testsuite/ld-z80/relocs_f_z80.d: Likewise. + * testsuite/ld-z80/relocs_f_z80n.d: Likewise. + +2020-02-19 Alan Modra + + * testsuite/ld-plugin/pr25355.d: Allow alpha-linux nm result. + +2020-02-10 H.J. Lu + + PR binutils/25355 + * testsuite/ld-plugin/lto.exp: Run PR binutils/25355 test. + * testsuite/ld-plugin/pr25355.c: New file. + * testsuite/ld-plugin/pr25355.d: Likewise. + * testsuite/lib/ld-lib.exp (run_cc_link_tests): Support compile + only dump. + +2020-02-07 H.J. Lu + + * testsuite/ld-unique/unique.exp (contains_unique_symbol): Updated. + +2020-02-07 Sergey Belyashov + + PR 25469 + * emulparams/elf32z80.sh: Use z80 emulation. + * emultempl/z80.em: Make generic to both COFF and ELF Z80 emulations. + * emultempl/z80elf.em: Delete. + * testsuite/ld-elf/pr22450.d: Expect to fail for the Z80. + * testsuite/ld-elf/sec64k.exp: Fix Z80 assembly. + * testsuite/ld-unique/pr21529.s: Avoid register name conflict. + * testsuite/ld-unique/unique.s: Likewise. + * testsuite/ld-unique/unique_empty.s: Likewise. + * testsuite/ld-unique/unique_shared.s: Likewise. + * testsuite/ld-unique/unique.d: Updated expected output. + * testsuite/ld-z80/arch_z80n.d: New file. + * testsuite/ld-z80/comb_arch_z80_z80n.d: New file. + * testsuite/ld-z80/labels.s: Add more labels. + * testsuite/ld-z80/relocs.s: Add more reloc tests. + * testsuite/ld-z80/relocs_f_z80n.d: New file + +2020-02-07 H.J. Lu + + PR ld/25022 + * testsuite/ld-elf/pr25022.d: Xfail more targets which don't use + ldelf_before_place_orphans. + +2020-02-06 H.J. Lu + + PR ld/25022 + * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Add + before_place_orphans_default. + * emultempl/armcoff.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/beos.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/generic.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/linux.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/msp430.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/pe.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/pep.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/ticoff.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/vanilla.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/elf.em (ld_${EMULATION_NAME}_emulation): Use + ldelf_before_place_orphans. + * ldelf.c (ldelf_before_place_orphans): New. + * ldelf.h (ldelf_before_place_orphans): Likewise. + * ldemul.c (ldemul_before_place_orphans): Likewise. + (before_place_orphans_default): Likewise. + * ldemul.h (ldemul_before_place_orphans): Likewise. + (before_place_orphans_default): Likewise. + (ld_emulation_xfer_struct): Add before_place_orphans. + * ldlang.c (lang_process): Call ldemul_before_place_orphans + before lang_place_orphans. + * testsuite/ld-elf/pr25022.d: New file. + * testsuite/ld-elf/pr25022.s: Likewise. + * testsuite/ld-elf/pr25022.t: Likewise. + +2020-02-06 H.J. Lu + + PR ld/25490 + * testsuite/ld-elf/pr25490-1.d: New file. + * testsuite/ld-elf/pr25490-1.s: Likewise. + +2020-02-06 H.J. Lu + + PR ld/24526 + PR ld/25021 + PR ld/25490 + * testsuite/ld-elf/elf.exp: Run PR ld/25490 tests. + * testsuite/ld-elf/pr24526.d: New file. + * testsuite/ld-elf/pr24526.s: Likewise. + * testsuite/ld-elf/pr25021.d: Likewise. + * testsuite/ld-elf/pr25021.s: Likewise. + * testsuite/ld-elf/pr25490-2-16.rd: Likewise. + * testsuite/ld-elf/pr25490-2-32.rd: Likewise. + * testsuite/ld-elf/pr25490-2-64.rd: Likewise. + * testsuite/ld-elf/pr25490-2.s: Likewise. + * testsuite/ld-elf/pr25490-3-16.rd: Likewise. + * testsuite/ld-elf/pr25490-3-32.rd: Likewise. + * testsuite/ld-elf/pr25490-3-64.rd: Likewise. + * testsuite/ld-elf/pr25490-3.s: Likewise. + * testsuite/ld-elf/pr25490-4-16.rd: Likewise. + * testsuite/ld-elf/pr25490-4-32.rd: Likewise. + * testsuite/ld-elf/pr25490-4-64.rd: Likewise. + * testsuite/ld-elf/pr25490-4.s: Likewise. + * testsuite/ld-elf/pr25490-5-16.rd: Likewise. + * testsuite/ld-elf/pr25490-5-32.rd: Likewise. + * testsuite/ld-elf/pr25490-5-64.rd: Likewise. + * testsuite/ld-elf/pr25490-5.s: Likewise. + * testsuite/ld-elf/pr25490-6-16.rd: Likewise. + * testsuite/ld-elf/pr25490-6-32.rd: Likewise. + * testsuite/ld-elf/pr25490-6-64.rd: Likewise. + * testsuite/ld-elf/pr25490-6.s: Likewise. + +2020-02-06 H.J. Lu + + * testsuite/lib/ld-lib.exp (check_gc_sections_available): Mark + z80 as not supported. + +2020-02-06 Alan Modra + + * testsuite/ld-ifunc/ifunc.exp: Enable for more targets, specifying + targets that don't support ifunc rather than ones that do. + (contains_irelative_reloc): Match R_PARISC_IPLT. + * testsuite/ld-ifunc/lib.c: Don't use .set in asm. + * testsuite/ld-ifunc/ifunc-23-x86.s, + * testsuite/ld-ifunc/ifunc-24-x86.s, + * testsuite/ld-ifunc/ifunc-25-x86.s, + * testsuite/ld-ifunc/ifunc-4-local-x86.s, + * testsuite/ld-ifunc/ifunc-4-x86.s: Define _main. + * testsuite/ld-ifunc/ifunc-10-i386.d, + * testsuite/ld-ifunc/ifunc-11-i386.d, + * testsuite/ld-ifunc/ifunc-12-i386.d, + * testsuite/ld-ifunc/ifunc-13-i386.d, + * testsuite/ld-ifunc/ifunc-14a-i386.d, + * testsuite/ld-ifunc/ifunc-14b-i386.d, + * testsuite/ld-ifunc/ifunc-14c-i386.d, + * testsuite/ld-ifunc/ifunc-14d-i386.d, + * testsuite/ld-ifunc/ifunc-14e-i386.d, + * testsuite/ld-ifunc/ifunc-14f-i386.d, + * testsuite/ld-ifunc/ifunc-15-i386.d, + * testsuite/ld-ifunc/ifunc-16-i386-now.d, + * testsuite/ld-ifunc/ifunc-16-i386.d, + * testsuite/ld-ifunc/ifunc-17a-i386.d, + * testsuite/ld-ifunc/ifunc-17b-i386.d, + * testsuite/ld-ifunc/ifunc-18a-i386.d, + * testsuite/ld-ifunc/ifunc-18b-i386.d, + * testsuite/ld-ifunc/ifunc-19a-i386.d, + * testsuite/ld-ifunc/ifunc-19b-i386.d, + * testsuite/ld-ifunc/ifunc-2-i386-now.d, + * testsuite/ld-ifunc/ifunc-2-i386.d, + * testsuite/ld-ifunc/ifunc-2-local-i386-now.d, + * testsuite/ld-ifunc/ifunc-2-local-i386.d, + * testsuite/ld-ifunc/ifunc-20-i386.d, + * testsuite/ld-ifunc/ifunc-21-i386.d, + * testsuite/ld-ifunc/ifunc-22-i386.d, + * testsuite/ld-ifunc/ifunc-26.d, + * testsuite/ld-ifunc/ifunc-5a-i386.d, + * testsuite/ld-ifunc/ifunc-5a-local-i386.d, + * testsuite/ld-ifunc/ifunc-5b-i386.d, + * testsuite/ld-ifunc/ifunc-5b-local-i386.d, + * testsuite/ld-ifunc/ifunc-5r-local-i386.d, + * testsuite/ld-ifunc/ifunc-6a-i386.d, + * testsuite/ld-ifunc/ifunc-6b-i386.d, + * testsuite/ld-ifunc/ifunc-7a-i386.d, + * testsuite/ld-ifunc/ifunc-7b-i386.d, + * testsuite/ld-ifunc/ifunc-8-i386.d, + * testsuite/ld-ifunc/ifunc-9-i386.d, + * testsuite/ld-ifunc/pr17154-i386-now.d, + * testsuite/ld-ifunc/pr17154-i386.d: xfail lynxos, nto, and solaris. + +2020-02-06 Alan Modra + + * testsuite/lib/ld-lib.exp (is_generic): Delete. + * testsuite/ld-unique/unique.exp: Exclude tic6x. + +2020-02-06 Alan Modra + + * configure.tgt (i[3-7]86-*-moss*): Don't clear targ_extra_ofiles. + (i[3-7]86-*-openbsd*, x86_64-*-openbsd*): Add. + +2020-02-02 H.J. Lu + + PR gas/25380 + * testsuite/ld-i386/pr22001-1c.S: Use "unique,N" in .section + directives. + * testsuite/ld-i386/tls-gd1.S: Likewise. + * testsuite/ld-x86-64/pr21481b.S: Likewise. + +2020-01-30 Jan Beulich + + * ld.texi: Remove space between @option and brace. + +2020-01-29 Alan Modra + + PR 25477 + * ldelf.c (ldelf_check_ld_so_conf): Add prefix parameter and + correct concat. + (ldelf_after_open): Add prefix parameter. + * ldelf.h (ldelf_after_open): Update prototype. + * emultempl/elf.em (gld${EMULATION_NAME}_after_open): Pass $prefix + to ldelf_after_open. + * Makefile.am: Correct z80 dependencies. + * Makefile.in: Regenerate. + +2020-01-28 Alan Modra + + * ldexp.c (fold_name): Don't print bfd_link_hash_lookup failed + in first phase. + +2020-01-27 Alan Modra + + * testsuite/ld-elfvers/vers.exp: Replace case statements with + switch statements. + * testsuite/ld-ifunc/ifunc.exp: Likewise. + * testsuite/ld-unique/unique.exp: Likewise. + +2020-01-27 H.J. Lu + Alan Modra + + PR ld/25458 + * testsuite/ld-elf/pr25458.map: New file. + * testsuite/ld-elf/pr25458.rd: Likewise. + * testsuite/ld-elf/pr25458a.s: Likewise. + * testsuite/ld-elf/pr25458b.s: Likewise. + * testsuite/ld-elf/shared.exp: Run PR ld/25458 test. + +2020-01-22 H.J. Lu + + PR ld/25416 + * testsuite/ld-x86-64/tls.exp: Skip GNU2 TLS tests only without + compiler support. + +2020-01-22 Alan Modra + + * testsuite/ld-powerpc/tlsdesc3.d, + * testsuite/ld-powerpc/tlsdesc3.wf, + * testsuite/ld-powerpc/tlsdesc4.d, + * testsuite/ld-powerpc/tlsdesc4.s, + * testsuite/ld-powerpc/tlsdesc4.wf: New tests. + * testsuite/ld-powerpc/powerpc.exp: Run them. + +2020-01-22 Alan Modra + + * emultempl/ppc64elf.em (ppc64_opt, PARSE_AND_LIST_LONGOPTS), + (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Support + --tls-get-addr-regsave and --no-tls-get-addr-regsave. + (params): Init new field. + * ld.texi (--tls-get-addr-regsave, --no-tls-get-addr-regsave): + Document. + * testsuite/ld-powerpc/tlsdesc.s, + * testsuite/ld-powerpc/tlsdesc.d, + * testsuite/ld-powerpc/tlsdesc.wf, + * testsuite/ld-powerpc/tlsdesc2.d, + * testsuite/ld-powerpc/tlsdesc2.wf, + * testsuite/ld-powerpc/tlsexenors.d, + * testsuite/ld-powerpc/tlsexenors.r, + * testsuite/ld-powerpc/tlsexers.d, + * testsuite/ld-powerpc/tlsexers.r, + * testsuite/ld-powerpc/tlsexetocnors.d, + * testsuite/ld-powerpc/tlsexetocrs.d, + * testsuite/ld-powerpc/tlsexetocrs.r, + * testsuite/ld-powerpc/tlsopt6.d, + * testsuite/ld-powerpc/tlsopt6.wf: New. + * testsuite/ld-powerpc/powerpc.exp: Run new tests. + +2020-01-22 Yuri Chornoivan + + PR 25417 + * ldlang.c (ldlang_open_ctf): Fix error message typo. + * emultempl/z80elf.em (z80_elf_after_open): Likewise. + +2020-01-21 H.J. Lu + + * testsuite/ld-elf/pr23900-1.d: Adjusted. + +2020-01-21 H.J. Lu + + * testsuite/ld-elf/pr23900-1.d: Also pass -l to readelf. + +2020-01-20 Nick Clifton + + * po/pt_BR.po: Updated Brazilian Portuguese translation. + * po/uk.po: Updated Ukranian translation. + +2020-01-20 H.J. Lu + + PR ld/25416 + * testsuite/ld-x86-64/pr25416-1.s: New file + * testsuite/ld-x86-64/pr25416-1a.d: Likewise. + * testsuite/ld-x86-64/pr25416-1b.d: Likewise. + * testsuite/ld-x86-64/pr25416-1.s: Likewise. + * testsuite/ld-x86-64/pr25416-2.s: Likewise. + * testsuite/ld-x86-64/pr25416-2a.d: Likewise. + * testsuite/ld-x86-64/pr25416-2b.d: Likewise. + * testsuite/ld-x86-64/pr25416-3.d: Likewise. + * testsuite/ld-x86-64/pr25416-3.s: Likewise. + * testsuite/ld-x86-64/pr25416-4.d: Likewise. + * testsuite/ld-x86-64/pr25416-4.s: Likewise. + * testsuite/ld-x86-64/pr25416-5a.c: Likewise. + * testsuite/ld-x86-64/pr25416-5b.s: Likewise. + * testsuite/ld-x86-64/pr25416-5c.s: Likewise. + * testsuite/ld-x86-64/pr25416-5d.s: Likewise. + * testsuite/ld-x86-64/pr25416-5e.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run PR ld/25416 tests. + +2020-01-20 Alan Modra + + * testsuite/ld-powerpc/tlsexe.d: Match new __tls_get_addr stub. + * testsuite/ld-powerpc/tlsexeno.d: Likewise. + * testsuite/ld-powerpc/tlsexetoc.d: Likewise. + * testsuite/ld-powerpc/tlsexetocno.d: Likewise. + * testsuite/ld-powerpc/tlsopt5.d: Likewise. + +2020-01-18 Roland McGrath + + * testsuite/ld-x86-64/align-branch-1.d: Loosen instruction regexps + to admit whatever absolute address. The label-relative address is + what the test needs to verify. + +2020-01-18 Nick Clifton + + * configure: Regenerate. + * po/ld.pot: Regenerate. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-16 Jozef Lawrynowicz + + * scripttempl/elf32msp430_3.sc: Remove. + +2020-01-16 Jozef Lawrynowicz + + * scripttempl/elf32msp430.sc: Add input section rules for + .upper.{text,data,rodata,bss}. + * testsuite/ld-msp430-elf/msp430-elf.exp: Run new test. + * testsuite/ld-msp430-elf/upper-input-sections.s: New test. + +2020-01-15 Lars Brinkhoff + + PR 20694 + * temulparams/pdp11.sh (TARGET_PAGE_SIZE): Set to 8192. + +2020-01-15 Jozef Lawrynowicz + + * testsuite/ld-msp430-elf/msp430-elf.exp: Run new test. + * testsuite/ld-msp430-elf/reloc-lo-430x.s: New test. + +2020-01-15 Alan Modra + + * testsuite/ld-powerpc/ambiguousv1b.d: Adjust expected output. + * testsuite/ld-powerpc/funref.s: Align func_tab. + * testsuite/ld-powerpc/funref2.s: Likewise. + * testsuite/ld-powerpc/funv1.s: Add dot symbols. + +2020-01-14 Lili Cui + + * testsuite/ld-i386/align-branch-1.d: Updated for i686-pc-elf. + +2020-01-13 Alan Modra + + * po/BLD-POTFILES.in: Regenerate. + +2020-01-13 Claudiu Zissulescu + + * testsuite/ld-arc/relax-local-pic.d: Improve matching patterns. + +2020-01-13 Claudiu Zissulescu + + * Makefile.am: Remove earcelf_prof.c and earclinux_prof.c + emulations. + * configure.tgt: Likewise. + * Makefile.in: Regenerate. + * emulparams/arcelf_prof.sh: Remove file. + * emulparams/arclinux_prof.sh: Likewise. + +2020-01-13 Claudiu Zissulescu + + * scripttempl/elfarcv2.sc : Allow interrupt vector table to be + located at an arbitrary address. Use DWARF.sc file. + * scripttempl/elfarc.sc: Use DWARF.sc file. + +2020-01-07 Alan Modra + + * testsuite/ld-mips-elf/eh-frame5.s, + * testsuite/ld-mips-elf/ehdr_start-new.s, + * testsuite/ld-mips-elf/ehdr_start-o32.s, + * testsuite/ld-mips-elf/mips16-call-global-1.s, + * testsuite/ld-mips-elf/mips16-intermix-1.s, + * testsuite/ld-mips-elf/mips16-pic-1b.s, + * testsuite/ld-mips-elf/mips16-pic-4c.s, + * testsuite/ld-mips-elf/no-shared-1-n64.s, + * testsuite/ld-mips-elf/no-shared-1-o32.s, + * testsuite/ld-mips-elf/pic-and-nonpic-1b-micromips.s, + * testsuite/ld-mips-elf/pic-and-nonpic-1b.s, + * testsuite/ld-mips-elf/pic-and-nonpic-2a.s, + * testsuite/ld-mips-elf/pic-and-nonpic-3b.s, + * testsuite/ld-mips-elf/pic-and-nonpic-4b.s, + * testsuite/ld-mips-elf/pic-and-nonpic-5a.s, + * testsuite/ld-mips-elf/pic-and-nonpic-6-n32c.s, + * testsuite/ld-mips-elf/pic-and-nonpic-6-n64c.s, + * testsuite/ld-mips-elf/pic-and-nonpic-6-o32c.s, + * testsuite/ld-mips-elf/pie.s, + * testsuite/ld-mips-elf/relax-jalr.s: Revert 2019-12-17 change. + +2020-01-06 Nick Clifton + + PR 25327 + * testsuite/ld-elf/shared.exp: Add -fcommon option to compiler + command line when building libcomm1.o and pr13250 tests. + * testsuite/ld-plugin/lto.exp: Likewise for pr20267 tests. + +2020-01-06 Nick Clifton + + PR 25326 + * testsuite/ld-elf/shared.exp: Add -fcommon option to compiler + command line when building pr19579 binaries. + +2020-01-03 Hannes Domani + + * emultempl/pe.em: Add new option --enable-reloc-section. + * emultempl/pep.em: Likewise. + * ld.texi: Document --enable-reloc-section. + * pe-dll.c (pe_dll_build_sections): Use pe_dll_enable_reloc_section. + (pe_dll_fill_sections): Simplify by calling pe_exe_fill_sections. + * pe-dll.h: Add extern declaration of option flag. + * pep-dll.c (pe_dll_enable_reloc_section): + Add alias define for pep_dll_enable_reloc_section. + * pep-dll.h: Add extern declaration of option flag. + +2020-01-02 Sergey Belyashov + + * Makefile.am: Add new target z80-elf + * configure.tgt: Likewise. + * Makefile.in: Regenerate. + * emultempl/z80.em: Add support for eZ80 and Z180 architectures. + * emulparams/elf32z80.sh: New file. + * emultempl/z80elf.em: Likewise. + * testsuite/ld-elf/comm-data4.s: Fix for Z80. + * testsuite/ld-elf/comm-data5.s: Fix for Z80. + * testsuite/ld-scripts/fill16.d: Fix for Z80. + * testsuite/ld-z80/arch_ez80_adl.d: Likewise. + * testsuite/ld-z80/arch_ez80_z80.d: Likewise. + * testsuite/ld-z80/arch_r800.d: Likewise. + * testsuite/ld-z80/arch_z180.d: Likewise. + * testsuite/ld-z80/arch_z80.d: Likewise. + * testsuite/ld-z80/comb_arch_ez80_z80.d: Likewise. + * testsuite/ld-z80/comb_arch_z180.d: Likewise. + * testsuite/ld-z80/labels.s: Likewise. + * testsuite/ld-z80/relocs.s: Likewise. + * testsuite/ld-z80/relocs_b_ez80.d: Likewise. + * testsuite/ld-z80/relocs_b_z80.d: Likewise. + * testsuite/ld-z80/relocs_f_z80.d: Likewise. + * testsuite/ld-z80/z80.exp: Likewise. + * NEWS: Mention the new support. + +2020-01-02 Tamar Christina + + PR 25210 + PR 24753 + * emultempl/aarch64elf.em (elf${ELFSIZE}_aarch64_add_stub_section): + Remove SEC_LINKER_CREATED. + * testsuite/ld-aarch64/aarch64-elf.exp: Add erratum835769-843419. + * testsuite/ld-aarch64/erratum835769-843419.d: New test. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2019 + +Copyright (C) 2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/libctf/ChangeLog b/libctf/ChangeLog index f12c88acfa2..cf5fd0bb4c2 100644 --- a/libctf/ChangeLog +++ b/libctf/ChangeLog @@ -1,1954 +1,14 @@ -2020-09-23 H.J. Lu - - PR libctf/26934 - * ctf-dump.c (ctf_dump_objts): Pass format argument to asprintf. - -2020-11-23 Nick Alcock - - * ctf-impl.h (ctf_dict_t) : New. - (struct ctf_archive_internal) : Likewise. - * ctf-create.c (ctf_serialize): Adjust for new field. - * ctf-open.c (init_symtab): Note the semantics of repeated calls. - (ctf_symsect_endianness): New. - (ctf_bufopen_internal): Set ctf_symtab_little_endian suitably for - the native endianness. - (_Static_assert): Moved... - (swap_thing): ... with this... - * swap.h: ... to here. - * ctf-util.c (ctf_elf32_to_link_sym): Use it, byteswapping the - Elf32_Sym if the ctf_symtab_little_endian demands it. - (ctf_elf64_to_link_sym): Likewise swap the Elf64_Sym if needed. - * ctf-archive.c (ctf_arc_symsect_endianness): New, set the - endianness of the symtab used by the dicts in an archive. - (ctf_archive_iter_internal): Initialize to unknown (assumed native, - do not call ctf_symsect_endianness). - (ctf_dict_open_by_offset): Call ctf_symsect_endianness if need be. - (ctf_dict_open_internal): Propagate the endianness down. - (ctf_dict_open_sections): Likewise. - * ctf-open-bfd.c (ctf_bfdopen_ctfsect): Get the endianness from the - struct bfd and pass it down to the archive. - * libctf.ver: Add ctf_symsect_endianness and - ctf_arc_symsect_endianness. - -2020-11-20 Nick Alcock - - * ctf-link.c (ctf_link_deduplicating): Clean up the ctf_link_outputs - hash on error. - -2020-11-20 Nick Alcock - - * ctf-create.c (ctf_dtd_insert): Set ENOMEM on the dict if out of memory. - (ctf_dvd_insert): Likewise. - (ctf_add_function): Report ECTF_RDONLY if this dict is not writable. - * ctf-subr.c (ctf_err_warn): Only debug-dump passed-in warnings if - the passed-in error code is nonzero: the error on the dict for - warnings may relate to a previous error. - -2020-11-20 Nick Alcock - - * ctf-open.c (ctf_getsymsect): New. - (ctf_getstrsect): Likewise. - * libctf.ver: Add them. - -2020-11-20 Nick Alcock - - * ctf-impl.h (struct ctf_archive_internal) : New, dicts - the archive machinery has opened and cached. - : New, cache of dicts containing symbols looked up. - : New, cache of types of symbols looked up. - * ctf-archive.c (ctf_arc_close): Free them on close. - (enosym): New, flag entry for 'symbol not present'. - (ctf_arc_import_parent): New, automatically import the parent from - ".ctf" if this is a child in an archive and ".ctf" is present. - (ctf_dict_open_sections): Use it. - (ctf_archive_iter_internal): Likewise. - (ctf_cached_dict_close): New, thunk around ctf_dict_close. - (ctf_dict_open_cached): New, open and cache a dict. - (ctf_arc_flush_caches): New, flush the caches. - (ctf_arc_lookup_symbol): New, look up a symbol in (all members of) - an archive, and cache the lookup. - (ctf_archive_iter): Note the new caching behaviour. - (ctf_archive_next): Use ctf_dict_open_cached. - * libctf.ver: Add ctf_arc_lookup_symbol and ctf_arc_flush_caches. - -2020-11-20 Nick Alcock - - * ctf-dedup.c (ctf_dedup_rhash_type): Null out the names of nameless - type kinds, just in case the input has named them. - -2020-11-20 Nick Alcock - - * ctf-dump.c (ctf_dump_header): Dump the new flags bits and the index - section lengths. - (ctf_dump_objts): Report indexed sections. Also dump functions. Use - ctf_symbol_next, not manual looping. - (ctf_dump_funcs): Delete. - (ctf_dump): Use ctf_dump_objts, not ctf_dump_funcs. - -2020-11-20 Nick Alcock - - * ctf-impl.h (CTF_INDEX_PAD_THRESHOLD): New. - (_libctf_nonnull_): Likewise. - (ctf_in_flight_dynsym_t): New. - (ctf_dict_t) : Likewise. - : Likewise. - : Likewise. - : Likewise. - : Likewise. - : Likewise. - : Likewise. - : Likewise. - : Likewise. - : Likewise. - : Likewise. - : Likewise. - (struct ctf_next) : Likewise. - (ctf_symtab_skippable): New prototype. - (ctf_add_funcobjt_sym): Likewise. - (ctf_dynhash_sort_by_name): Likewise. - (ctf_sym_to_elf64): Rename to... - (ctf_elf32_to_link_sym): ... this, and... - (ctf_elf64_to_link_sym): ... this. - * ctf-open.c (init_symtab): Check for lack of CTF_F_NEWFUNCINFO - flag, and presence of index sections. Refactor out - ctf_symtab_skippable and ctf_elf*_to_link_sym, and use them. Use - ctf_link_sym_t, not Elf64_Sym. Skip initializing objt or func - sxlate sections if corresponding index section is present. Adjust - for new func info section format. - (ctf_bufopen_internal): Add ctf_err_warn to corrupt-file error - handling. Report incorrect-length index sections. Always do an - init_symtab, even if there is no symtab section (there may be index - sections still). - (flip_objts): Adjust comment: func and objt sections are actually - identical in structure now, no need to caveat. - (ctf_dict_close): Free newly-added data structures. - * ctf-create.c (ctf_create): Initialize them. - (ctf_symtab_skippable): New, refactored out of - init_symtab, with st_nameidx_set check added. - (ctf_add_funcobjt_sym): New, add a function or object symbol to the - ctf_objthash or ctf_funchash, by name. - (ctf_add_objt_sym): Call it. - (ctf_add_func_sym): Likewise. - (symtypetab_delete_nonstatic_vars): New, delete vars also present as - data objects. - (CTF_SYMTYPETAB_EMIT_FUNCTION): New flag to symtypetab emitters: - this is a function emission, not a data object emission. - (CTF_SYMTYPETAB_EMIT_PAD): New flag to symtypetab emitters: emit - pads for symbols with no type (only set for unindexed sections). - (CTF_SYMTYPETAB_FORCE_INDEXED): New flag to symtypetab emitters: - always emit indexed. - (symtypetab_density): New, figure out section sizes. - (emit_symtypetab): New, emit a symtypetab. - (emit_symtypetab_index): New, emit a symtypetab index. - (ctf_serialize): Call them, emitting suitably sorted symtypetab - sections and indexes. Set suitable header flags. Copy over new - fields. - * ctf-hash.c (ctf_dynhash_sort_by_name): New, used to impose an - order on symtypetab index sections. - * ctf-link.c (ctf_add_type_mapping): Delete erroneous comment - relating to code that was never committed. - (ctf_link_one_variable): Improve variable name. - (check_sym): New, symtypetab analogue of check_variable. - (ctf_link_deduplicating_one_symtypetab): New. - (ctf_link_deduplicating_syms): Likewise. - (ctf_link_deduplicating): Call them. - (ctf_link_deduplicating_per_cu): Note that we don't call them in - this case (yet). - (ctf_link_add_strtab): Set the error on the fp correctly. - (ctf_link_add_linker_symbol): New (no longer a do-nothing stub), add - a linker symbol to the in-flight list. - (ctf_link_shuffle_syms): New (no longer a do-nothing stub), turn the - in-flight list into a mapping we can use, now its names are - resolvable in the external strtab. - * ctf-string.c (ctf_str_rollback_atom): Don't roll back atoms with - external strtab offsets. - (ctf_str_rollback): Adjust comment. - (ctf_str_write_strtab): Migrate ctf_syn_ext_strtab population from - writeout time... - (ctf_str_add_external): ... to string addition time. - * ctf-lookup.c (ctf_lookup_var_key_t): Rename to... - (ctf_lookup_idx_key_t): ... this, now we use it for syms too. - : New member, a name table. - (ctf_lookup_var): Adjust accordingly. - (ctf_lookup_variable): Likewise. - (ctf_lookup_by_id): Shuffle further up in the file. - (ctf_symidx_sort_arg_cb): New, callback for... - (sort_symidx_by_name): ... this new function to sort a symidx - found to be unsorted (likely originating from the compiler). - (ctf_symidx_sort): New, sort a symidx. - (ctf_lookup_symbol_name): Support dynamic symbols with indexes - provided by the linker. Use ctf_link_sym_t, not Elf64_Sym. - Check the parent if a child lookup fails. - (ctf_lookup_by_symbol): Likewise. Work for function symbols too. - (ctf_symbol_next): New, iterate over symbols with types (without - sorting). - (ctf_lookup_idx_name): New, bsearch for symbol names in indexes. - (ctf_try_lookup_indexed): New, attempt an indexed lookup. - (ctf_func_info): Reimplement in terms of ctf_lookup_by_symbol. - (ctf_func_args): Likewise. - (ctf_get_dict): Move... - * ctf-types.c (ctf_get_dict): ... here. - * ctf-util.c (ctf_sym_to_elf64): Re-express as... - (ctf_elf64_to_link_sym): ... this. Add new st_symidx field, and - st_nameidx_set (always 0, so st_nameidx can be ignored). Look in - the ELF strtab for names. - (ctf_elf32_to_link_sym): Likewise, for Elf32_Sym. - (ctf_next_destroy): Destroy ctf_next_t.u.ctn_next if need be. - * libctf.ver: Add ctf_symbol_next, ctf_add_objt_sym and - ctf_add_func_sym. - -2020-11-20 Nick Alcock - - * ctf-link.c (ctf_link_shuffle_syms): Adjust. - (ctf_link_add_linker_symbol): New, unimplemented stub. - * libctf.ver: Add it. - * ctf-create.c (ctf_serialize): Set CTF_F_DYNSTR on newly-serialized - dicts. - * ctf-open-bfd.c (ctf_bfdopen_ctfsect): Check for the flag: open the - symtab/strtab if not present, dynsym/dynstr otherwise. - * ctf-archive.c (ctf_arc_bufpreamble): New, get the preamble from - some arbitrary member of a CTF archive. - * ctf-impl.h (ctf_arc_bufpreamble): Declare it. - -2020-11-20 Nick Alcock - - * ctf-archive.c (ctf_arc_open_by_offset): Rename to... - (ctf_dict_open_by_offset): ... this. Adjust callers. - (ctf_arc_open_by_name_internal): Rename to... - (ctf_dict_open_internal): ... this. Adjust callers. - (ctf_arc_open_by_name_sections): Rename to... - (ctf_dict_open_sections): ... this, keeping compatibility function. - (ctf_arc_open_by_name): Rename to... - (ctf_dict_open): ... this, keeping compatibility function. - * libctf.ver: New functions added. - * ctf-link.c (ctf_link_one_input_archive): Adjusted accordingly. - (ctf_link_deduplicating_open_inputs): Likewise. - -2020-11-20 Nick Alcock - - * ctf-impl.h: Rename ctf_file_t to ctf_dict_t: all declarations - adjusted. - (ctf_fileops): Rename to... - (ctf_dictops): ... this. - (ctf_dedup_t) : Rename to... - : ... this. - (ctf_file_t): Fix outdated comment. - : Rename to... - : ... this. - (struct ctf_archive_internal) : Rename to... - : ... this. - * ctf-archive.c: Rename ctf_file_t to ctf_dict_t. - Rename ctf_archive.ctfa_nfiles to ctfa_ndicts. - Rename ctf_file_close to ctf_dict_close. All users adjusted. - * ctf-create.c: Likewise. Refer to CTF dicts, not CTF containers. - (ctf_bundle_t) : Rename to... - - - * mkerrors.sed: Remove. - * ctf-error.c (_CTF_FIRST): New define. - (_CTF_ITEM): Define this, not _CTF_STR. - (_ctf_errlist, _ctf_erridx): Use _CTF_ERRORS. - (ERRSTRFIELD): Rewrite. - (ERRSTRFIELD1): Remove. - * Makefile.in: Rebuild. - * Makefile.am (BUILT_SOURCES): Remove. - (ctf-error.h): Remove. - -2020-08-27 Nick Alcock - - * ctf-subr.c (open_errors): New list. - (ctf_err_warn): Calls with NULL fp append to open_errors. Add err - parameter, and use it to decorate the debug stream with errmsgs. - (ctf_err_warn_to_open): Splice errors from a CTF dict into the - open_errors. - (ctf_errwarning_next): Calls with NULL fp report from open_errors. - New err param to report iteration errors (including end-of-iteration) - when fp is NULL. - (ctf_assert_fail_internal): Adjust ctf_err_warn call for new err - parameter: gettextize. - * ctf-impl.h (ctfo_get_vbytes): Add ctf_file_t parameter. - (LCTF_VBYTES): Adjust. - (ctf_err_warn_to_open): New. - (ctf_err_warn): Adjust. - (ctf_bundle): Used in only one place: move... - * ctf-create.c: ... here. - (enumcmp): Use ctf_err_warn, not ctf_dprintf, passing the err number - down as needed. Don't emit the errmsg. Gettextize. - (membcmp): Likewise. - (ctf_add_type_internal): Likewise. - (ctf_write_mem): Likewise. - (ctf_compress_write): Likewise. Report errors writing the header or - body. - (ctf_write): Likewise. - * ctf-archive.c (ctf_arc_write_fd): Use ctf_err_warn, not - ctf_dprintf, and gettextize, as above. - (ctf_arc_write): Likewise. - (ctf_arc_bufopen): Likewise. - (ctf_arc_open_internal): Likewise. - * ctf-labels.c (ctf_label_iter): Likewise. - * ctf-open-bfd.c (ctf_bfdclose): Likewise. - (ctf_bfdopen): Likewise. - (ctf_bfdopen_ctfsect): Likewise. - (ctf_fdopen): Likewise. - * ctf-string.c (ctf_str_write_strtab): Likewise. - * ctf-types.c (ctf_type_resolve): Likewise. - * ctf-open.c (get_vbytes_common): Likewise. Pass down the ctf dict. - (get_vbytes_v1): Pass down the ctf dict. - (get_vbytes_v2): Likewise. - (flip_ctf): Likewise. - (flip_types): Likewise. Use ctf_err_warn, not ctf_dprintf, and - gettextize, as above. - (upgrade_types_v1): Adjust calls. - (init_types): Use ctf_err_warn, not ctf_dprintf, as above. - (ctf_bufopen_internal): Likewise. Adjust calls. Transplant errors - emitted into individual dicts into the open errors if this turns - out to be a failed open in the end. - * ctf-dump.c (ctf_dump_format_type): Adjust ctf_err_warn for new err - argument. Gettextize. Don't emit the errmsg. - (ctf_dump_funcs): Likewise. Collapse err label into its only case. - (ctf_dump_type): Likewise. - * ctf-link.c (ctf_create_per_cu): Adjust ctf_err_warn for new err - argument. Gettextize. Don't emit the errmsg. - (ctf_link_one_type): Likewise. - (ctf_link_lazy_open): Likewise. - (ctf_link_one_input_archive): Likewise. - (ctf_link_deduplicating_count_inputs): Likewise. - (ctf_link_deduplicating_open_inputs): Likewise. - (ctf_link_deduplicating_close_inputs): Likewise. - (ctf_link_deduplicating): Likewise. - (ctf_link): Likewise. - (ctf_link_deduplicating_per_cu): Likewise. Add some missed - ctf_set_errnos to obscure error cases. - * ctf-dedup.c (ctf_dedup_rhash_type): Adjust ctf_err_warn for new - err argument. Gettextize. Don't emit the errmsg. - (ctf_dedup_populate_mappings): Likewise. - (ctf_dedup_detect_name_ambiguity): Likewise. - (ctf_dedup_init): Likewise. - (ctf_dedup_multiple_input_dicts): Likewise. - (ctf_dedup_conflictify_unshared): Likewise. - (ctf_dedup): Likewise. - (ctf_dedup_rwalk_one_output_mapping): Likewise. - (ctf_dedup_id_to_target): Likewise. - (ctf_dedup_emit_type): Likewise. - (ctf_dedup_emit_struct_members): Likewise. - (ctf_dedup_populate_type_mapping): Likewise. - (ctf_dedup_populate_type_mappings): Likewise. - (ctf_dedup_emit): Likewise. - (ctf_dedup_hash_type): Likewise. Fix a bit of messed-up error - status setting. - (ctf_dedup_rwalk_one_output_mapping): Likewise. Don't hide - unknown-type-kind messages (which signify file corruption). - -2020-08-27 Nick Alcock - - * configure.ac: Adjust package name to simply 'libctf': arbitrarily - declare this to be version 1.2.0. - * Makefile.am (AM_CPPFLAGS): Add @INCINTL@. - * Makefile.in: Regenerated. - * configure: Regenerated. - * ctf-intl.h: New file, lightly modified from opcodes/opintl.h. - * ctf-impl.h: Include it. - * ctf-error.r (_ctf_errlist_t): Mark strings as noop-translatable. - (ctf_errmsg): Actually translate them. - -2020-07-26 Eli Zaretskii - - PR binutils/25155: - * ctf-create.c (EOVERFLOW): If not defined by system header, - redirect to ERANGE as a poor man's substitute. - * ctf-subr.c (ENOTSUP): If not defined, use ENOSYS instead. - -2020-07-22 Nick Alcock - - * ctf-create.c (ctf_dtd_insert): Add uintptr_t casts. - (ctf_dtd_delete): Likewise. - (ctf_dtd_lookup): Likewise. - (ctf_rollback): Likewise. - * ctf-hash.c (ctf_hash_lookup_type): Likewise. - * ctf-types.c (ctf_lookup_by_rawhash): Likewise. - -2020-07-22 Nick Alcock - - * ctf-lookup.c (ctf_lookup_by_name): Adjust. - -2020-07-22 Nick Alcock - - * ctf-archive.c (ctf_arc_bufopen): Endian-swap the archive magic - number if needed. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_list_splice): New. - * ctf-util.h (ctf_list_splice): Likewise. - * ctf-link.c (link_sort_inputs_cb_arg_t): Likewise. - (ctf_link_sort_inputs): Likewise. - (ctf_link_deduplicating_count_inputs): Likewise. - (ctf_link_deduplicating_open_inputs): Likewise. - (ctf_link_deduplicating_close_inputs): Likewise. - (ctf_link_deduplicating_variables): Likewise. - (ctf_link_deduplicating_per_cu): Likewise. - (ctf_link_deduplicating): Likewise. - (ctf_link): Call it. - -2020-07-22 Nick Alcock - - * ctf-link.c (ctf_link_one_input_archive_member): Check - CTF_LINK_OMIT_VARIABLES_SECTION. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_type_id_key): New, the key in the - cd_id_to_file_t. - (ctf_dedup): New, core deduplicator state. - (ctf_file_t) : New. - : New. - : New. - (ctf_hash_type_id_key): New prototype. - (ctf_hash_eq_type_id_key): Likewise. - (ctf_dedup_atoms_init): Likewise. - * ctf-hash.c (ctf_hash_eq_type_id_key): New. - (ctf_dedup_atoms_init): Likewise. - * ctf-create.c (ctf_serialize): Adjusted. - (ctf_add_encoded): No longer static. - (ctf_add_reftype): Likewise. - * ctf-open.c (ctf_file_close): Destroy the - ctf_dedup_atoms_alloc. - * ctf-dedup.c: New file. - * ctf-decls.h [!HAVE_DECL_STPCPY]: Add prototype. - * configure.ac: Check for stpcpy. - * Makefile.am: Add it. - * Makefile.in: Regenerate. - * config.h.in: Regenerate. - * configure: Regenerate. - -2020-07-22 Nick Alcock - - * configure.ac: Add --enable-libctf-hash-debugging. - * aclocal.m4: Pull in enable.m4, for GCC_ENABLE. - * Makefile.in: Regenerated. - * configure: Likewise. - * config.h.in: Likewise. - * ctf-impl.h [ENABLE_LIBCTF_HASH_DEBUGGING] - (ctf_assert): Define to assert. - -2020-07-22 Nick Alcock - - * ctf-sha1.h: New, inline wrappers around sha1_init_ctx and - sha1_process_bytes. - * ctf-impl.h: Include it. - (ctf_sha1_init): New. - (ctf_sha1_add): Likewise. - (ctf_sha1_fini): Likewise. - * ctf-sha1.c: New, non-inline wrapper around sha1_finish_ctx - producing strings. - * Makefile.am: Add file. - * Makefile.in: Regenerate. - -2020-07-22 Nick Alcock - - * libctf.ver (ctf_link_set_variable_filter): Add. - * ctf-impl.h (ctf_file_t) : New. - : Likewise. - * ctf-create.c (ctf_serialize): Adjust. - * ctf-link.c (ctf_link_set_variable_filter): New, set it. - (ctf_link_one_variable): Call it if set. - -2020-07-22 Nick Alcock - - * ctf-link.c (ctf_link_one_variable): Check the dst_type for - conflicts, not the source type. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_file_t): Improve comments. - : Split into... - : ... this... - : ... and this. - * ctf-create.c (ctf_serialize): Adjust. - * ctf-open.c (ctf_file_close): Likewise. - * ctf-link.c (ctf_create_per_cu): Look things up in the - in_cu_mapping instead of the cu_mapping. - (ctf_link_add_cu_mapping): The deduplicating link will define - what happens if many FROMs share a TO. - (ctf_link_add_cu_mapping): Create in_cu_mapping and - out_cu_mapping. Do not create ctf_link_outputs here any more, or - create per-CU dicts here: they are already created when needed. - (ctf_link_one_variable): Log a debug message if we skip a - variable due to its type being concealed in a CU-mapped link. - (This is probably too common a case to make into a warning.) - (ctf_link): Create empty per-CU dicts if requested. - -2020-07-22 Nick Alcock - - * ctf-link.c (ctf_link_write): Close the fd. - -2020-07-22 Nick Alcock - - * Makefile.am: Set -DNOBFD=1 in libctf-nobfd, and =0 elsewhere. - * Makefile.in: Regenerated. - * ctf-impl.h (ctf_link_input_name): New. - (ctf_file_t) : New. - * ctf-create.c (ctf_serialize): Adjust accordingly. - * ctf-link.c: Define ctf_open as weak when PIC. - (ctf_arc_close_thunk): Remove unnecessary thunk. - (ctf_file_close_thunk): Likewise. - (ctf_link_input_name): New. - (ctf_link_input_t): New value of the ctf_file_t.ctf_link_input. - (ctf_link_input_close): Adjust accordingly. - (ctf_link_add_ctf_internal): New, split from... - (ctf_link_add_ctf): ... here. Return error if lazy loading of - CTF is not possible. Change to just call... - (ctf_link_add): ... this new function. - (ctf_link_add_cu_mapping): Transition to ctf_err_warn. Drop the - ctf_file_close_thunk. - (ctf_link_in_member_cb_arg_t) Rename to... - : ... this. - : Drop. - : Likewise (migrated to ctf_link_flags). - : Rename to... - : ... this. - : Rename to... - : ... this. - : New. - (ctf_link_one_type): Adjuwt accordingly. Transition to - ctf_err_warn, removing a TODO. - (ctf_link_one_variable): Note a case too common to warn about. - Report in the debug stream if a cu-mapped link prevents addition - of a conflicting variable. - (ctf_link_one_input_archive_member): Adjust. - (ctf_link_lazy_open): New, open a CTF archive for linking when - needed. - (ctf_link_close_one_input_archive): New, close it again. - (ctf_link_one_input_archive): Adjust for lazy opening, member - renames, and ctf_err_warn transition. Move the - empty_link_type_mapping call to... - (ctf_link): ... here. Adjut for renamings and thunk removal. - Don't spuriously fail if some input contains no CTF data. - (ctf_link_write): ctf_err_warn transition. - * libctf.ver: Remove not-yet-stable comment. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_strerror): Delete. - * ctf-subr.c (ctf_strerror): Likewise. - * ctf-error.c (ctf_errmsg): Stop using ctf_strerror: just use - strerror directly. - -2020-07-22 Nick Alcock - - * ctf-impl.c (ctf_file_t) : New. - (ctf_import_unref): New. - * ctf-open.c (ctf_file_close) Drop the refcount all the way to - zero. Don't recurse back in if the refcount is already zero. - (ctf_import): Check ctf_parent_unreffed before deciding whether - to close a pre-existing parent. Set it to zero. - (ctf_import_unreffed): New, as above, setting - ctf_parent_unreffed to 1. - * ctf-create.c (ctf_serialize): Do not ctf_import into the new - child: use direct assignment, and set unreffed on the new and - old children. - * ctf-link.c (ctf_create_per_cu): Import the parent using - ctf_import_unreffed. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_link_type_mapping_key): Rename to... - (ctf_link_type_key): ... this, adjusting member prefixes to - match. - (ctf_hash_type_mapping_key): Rename to... - (ctf_hash_type_key): ... this. - (ctf_hash_eq_type_mapping_key): Rename to... - (ctf_hash_eq_type_key): ... this. - * ctf-hash.c (ctf_hash_type_mapping_key): Rename to... - (ctf_hash_type_key): ... this, and adjust for member name - changes. - (ctf_hash_eq_type_mapping_key): Rename to... - (ctf_hash_eq_type_key): ... this, and adjust for member name - changes. - * ctf-link.c (ctf_add_type_mapping): Adjust. Note the lack of - need for out-of-memory checking in this code. - (ctf_type_mapping): Adjust. - -2020-07-22 Nick Alcock - - configure.ac: Check for vasprintf. - configure: Regenerated. - config.h.in: Likewise. - -2020-07-22 Nick Alcock - - * ctf-archive.c (ctf_arc_bufopen): Fix message. - -2020-07-22 Nick Alcock - - * ctf-impl.h (struct ctf_archive_internal) - New. - * ctf-open-bfd.c (ctf_bfdopen_ctfsect): Explicitly open a strtab - if the input has no symtab, rather than dividing by - zero. Arrange to free it later via ctfi_free_ctfsect. - * ctf-archive.c (ctf_new_archive_internal): Do not - ctfi_free_strsect by default. - (ctf_arc_close): Possibly free it here. - -2020-07-22 Nick Alcock - - * ctf-dump.c (ctf_is_slice): Delete, unnecessary. - (ctf_dump_format_type): improve slice formatting. Always print - the type size, even of slices. - (ctf_dump_member): Print slices (-> bitfields) differently from - non-slices. Failure to format a type is not an OOM. - -2020-07-22 Nick Alcock - - * ctf-dump.c (ctf_dump_format_type): Emit a warning. - (ctf_dump_label): Swallow errors from ctf_dump_format_type. - (ctf_dump_objts): Likewise. - (ctf_dump_var): Likewise. - (ctf_dump_type): Do not emit a duplicate message. Move to - ctf_err_warning, and swallow all errors. - -2020-07-22 Nick Alcock - - * ctf-decl.c (ctf_decl_fini): Free the cd_buf. - (ctf_decl_buf): Once it escapes, don't try to free it later. - -2020-07-22 Nick Alcock - - * ctf-types.c (ctf_type_aname): Print arg types here... - * ctf-dump.c (ctf_dump_funcs): ... not here: but do substitute - in the type name here. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_assert): New. - (ctf_err_warning_t): Likewise. - (ctf_file_t) : Likewise. - (ctf_err_warn): New prototype. - (ctf_assert_fail_internal): Likewise. - * ctf-inlines.h (ctf_assert_internal): Likewise. - * ctf-open.c (ctf_file_close): Free ctf_errs_warnings. - * ctf-create.c (ctf_serialize): Copy it on serialization. - * ctf-subr.c (ctf_err_warn): New, add an error/warning. - (ctf_errwarning_next): New iterator, free and pass back - errors/warnings in succession. - * libctf.ver (ctf_errwarning_next): Add. - -2020-07-22 Egeyar Bagcioglu - - * ctf-types.c (ctf_variable_iter): Fix error return. - -2020-07-22 Nick Alcock - - * ctf-open.c (ctf_bufopen_internal): Diagnose invalid flags. - -2020-07-22 Nick Alcock - - ctf-decls.h (ctf_qsort_compar_thunk): Fix arg passing. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_next_hkv_t): New, kv-pairs passed to - sorting functions. - (ctf_next_t) : New, sorted kv-pairs for - ctf_dynhash_next_sorted. - : New, pointer to the dynhash under iteration. - : New, pointer to the dynset under iteration. - (ctf_hash_sort_f): Sorting function passed to... - (ctf_dynhash_next_sorted): ... this new function. - (ctf_dynhash_next): New. - (ctf_dynset_next): New. - * ctf-inlines.h (ctf_dynhash_cnext_sorted): New. - (ctf_dynhash_cnext): New. - (ctf_dynset_cnext): New. - * ctf-hash.c (ctf_dynhash_next_sorted): New. - (ctf_dynhash_next): New. - (ctf_dynset_next): New. - * ctf-util.c (ctf_next_destroy): Free the u.ctn_sorted_hkv if - needed. - (ctf_next_copy): Alloc-and-copy the u.ctn_sorted_hkv if needed. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_next): New. - (ctf_get_dict): New prototype. - * ctf-lookup.c (ctf_get_dict): New, split out of... - (ctf_lookup_by_id): ... here. - * ctf-util.c (ctf_next_create): New. - (ctf_next_destroy): New. - (ctf_next_copy): New. - * ctf-types.c (includes): Add . - (ctf_member_next): New. - (ctf_enum_next): New. - (ctf_type_iter): Document the lack of iteration over parent - types. - (ctf_type_next): New. - (ctf_variable_next): New. - * ctf-archive.c (ctf_archive_next): New. - * libctf.ver: Add new public functions. - -2020-07-22 Nick Alcock - - * libctf.ver (ctf_ref): New. - * ctf-open.c (ctf_ref): Implement it. - -2020-07-22 Nick Alcock - - * ctf-inlines.h (ctf_forwardable_kind): New. - * ctf-create.c (ctf_add_forward): Use it. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_get_ctt_size): Move definition from here... - * ctf-inlines.h (ctf_get_ctt_size): ... to here. - -2020-07-22 Nick Alcock - - * ctf-hash.c (ctf_dynset_eq_string): New. - (ctf_dynset_create): New. - (DYNSET_EMPTY_ENTRY_REPLACEMENT): New. - (DYNSET_DELETED_ENTRY_REPLACEMENT): New. - (key_to_internal): New. - (internal_to_key): New. - (ctf_dynset_insert): New. - (ctf_dynset_remove): New. - (ctf_dynset_destroy): New. - (ctf_dynset_lookup): New. - (ctf_dynset_exists): New. - (ctf_dynset_lookup_any): New. - (ctf_hash_insert_type): Coding style. - (ctf_hash_define_type): Likewise. - * ctf-impl.h (ctf_dynset_t): New. - (ctf_dynset_eq_string): New. - (ctf_dynset_create): New. - (ctf_dynset_insert): New. - (ctf_dynset_remove): New. - (ctf_dynset_destroy): New. - (ctf_dynset_lookup): New. - (ctf_dynset_exists): New. - (ctf_dynset_lookup_any): New. - * ctf-inlines.h (ctf_dynset_cinsert): New. - -2020-07-22 Nick Alcock - - * ctf-hash.c (ctf_helem_t) : Remove. - : Likewise. - : New. - (ctf_dynhash_item_free): Indirect through the owner. - (ctf_dynhash_create): Only pass in ctf_dynhash_item_free and - allocate space for the key_free and value_free fields fields - if necessary. - (ctf_hashtab_insert): Likewise. Fix OOM errno value. - (ctf_dynhash_insert): Only access ctf_hashtab's key_free and - value_free if they will exist. Set the slot's owner, but only - if it exists. - (ctf_dynhash_remove): Adjust. - -2020-07-22 Nick Alcock - - * ctf-hash.c (ctf_hashtab_insert): Free the key passed in if - there is a key-freeing function and the key already exists. - -2020-07-22 Nick Alcock - - * ctf-inlines.h: New file. - * ctf-impl.h: Include it. - (ctf_hash_iter_find_f): New typedef. - (ctf_dynhash_elements): New. - (ctf_dynhash_lookup_kv): New. - (ctf_dynhash_iter_find): New. - * ctf-hash.c (ctf_dynhash_lookup_kv): New. - (ctf_traverse_find_cb_arg_t): New. - (ctf_hashtab_traverse_find): New. - (ctf_dynhash_iter_find): New. - (ctf_dynhash_elements): New. - -2020-07-22 Nick Alcock - - * ctf-impl.h [!__GNUC__] (__extension__): Define to nothing. - -2020-07-22 Nick Alcock - - * ctf-archive.c (ctf_archive_count): New. - * libctf.ver: New public function. - -2020-07-22 Nick Alcock - - * ctf-types.c (ctf_member_count): New. - * libctf.ver: New public function. - -2020-07-22 Nick Alcock - - * ctf-types.c (ctf_type_kind_forwarded): New. - -2020-07-22 Nick Alcock - - * ctf-types.c (ctf_type_name_raw): New. - (ctf_type_aname_raw): Reimplement accordingly. - -2020-07-22 Nick Alcock - - * ctf-subr.c (ctf_dprintf): _libctf_debug is unlikely to be set. - -2020-07-22 Nick Alcock - - * ctf-impl.h (struct ctf_archive_internal) - : New. - (ctf_new_archive_internal): Adjust. - * ctf-archive.c (ctf_new_archive_internal): Likewise. - Initialize ctfi_unmap_on_close. Adjust error path. - (ctf_arc_bufopen): Adjust ctf_new_archive_internal call - (unmap_on_close is 0). - (ctf_arc_close): Only unmap if ctfi_unmap_on_close. - * ctf-open-bfd.c (ctf_fdopen): Adjust. - -2020-07-22 Nick Alcock - - * ctf-types.c (ctf_type_aname): Return ECTF_CORRUPT if - ints, floats or typedefs have no name. Fix comment typo. - -2020-07-22 Nick Alcock - - * ctf-create.c (ctf_add_slice): Support slices of any kind that - resolves to an integral type. - * ctf-types.c (ctf_type_encoding): Resolve the type before - fishing its encoding out. - -2020-07-22 Nick Alcock - - * ctf-create.c (ctf_create): Mark dirty. - -2020-07-22 Nick Alcock - - * ctf-create.c (membcmp) Skip nameless members. - -2020-07-22 Nick Alcock - - * ctf-create.c (ctf_add_member_offset): Support names of "" - as if they were the null pointer. - -2020-07-22 Nick Alcock - - * ctf-open.c (init_types): Remove typeless CTF_K_FORWARD - special-casing. - -2020-07-22 Nick Alcock - - * ctf-types.c (ctf_type_reference): Add support for dynamic slices. - -2020-07-22 Nick Alcock - - * ctf-create.c (ctf_serialize): Add cast. - (ctf_add_slice): Likewise. - -2020-07-22 Nick Alcock - - * ctf-impl.h (ctf_dtdef_t) : Fix type. - * ctf-create.c (ctf_add_function): Check for unimplemented type - and populate at the same time. Populate one-by-one, not via - memcpy. - (ctf_serialize): Remove unnecessary cast. - * ctf-types.c (ctf_func_type_info): Likewise. - (ctf_func_type_args): Likewise. Fix comment typo. - -2020-07-22 Nick Alcock - - * ctf-create.c (ctf_add_reftype): Support refs to type zero. - (ctf_add_array): Support array contents of type zero. - (ctf_add_function): Support arguments and return types of - type zero. - (ctf_add_typedef): Support typedefs to type zero. - (ctf_add_member_offset): Support members of type zero, - unless added at unspecified (naturally-aligned) offset. - -2020-07-22 Nick Alcock - - * ctf-error.c: Include , for offsetof. - (_ctf_errlist): Migrate to... - (_ctf_errlist_t): ... this. - (_ctf_erridx): New, indexes into _ctf_errlist_t. - (_ctf_nerr): Remove. - (ctf_errmsg): Adjust accordingly. - * Makefile.am (BUILT_SOURCES): Note... - (ctf-error.h): ... this new rule. - * Makefile.in: Regenerate. - * mkerrors.sed: New, process ctf-api.h to generate ctf-error.h. - * .gitignore: New, ignore ctf-error.h. - -2020-07-22 Nick Alcock - - * ctf-impl.h: Fix typos in comments. - -2020-07-22 Nick Clifton - - * ctf-archive.c (ctf_arc_write): Avoid calling close twice on the - same file descriptor. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-06-26 Nick Alcock - - * aclocal.m4: Add config/gettext-sister.m4: Shuffle into - alphabetical order. - * configure.ac: Add ZW_GNU_GETTEXT_SISTER_DIR. - * config.h.in: Regenerated. - * Makefile.in: Likewise. - * configure: Likewise. - -2020-06-26 Nick Alcock - - * ctf-create.c: Include . - * ctf-open-bfd.c: Likewise. - -2020-06-26 Nick Alcock - - PR libctf/25120 - * configure.ac: Check for bswap_16, bswap_32, and bswap_64 decls. - * swap.h (bswap_16): Do not assume that presence of - means this is declared. - (bswap_32): Likewise. - (bswap_64): Likewise. - (bswap_identity_64): Remove, unused. - * configure: Regenerated. - * config.h.in: Likewise. - -2020-06-26 Nick Alcock - - PR libctf/25120 - * ctf-impl.h (_libctf_printflike_): Add non-GNU-C fallback. - (_libctf_unlikely_): Likewise. - (_libctf_unused): Likewise. - (_libctf_malloc_): Likewise. - -2020-06-26 Nick Alcock - - PR libctf/25120 - * ctf-archive.c (search_nametbl): No longer global: declare... - (ctf_arc_open_by_name_internal): ... here. Use bsearch_r. - (search_modent_by_name): Take and use ARG for the nametbl. - -2020-06-26 Nick Alcock - - * ctf-impl.h (ctf_new_archive_internal): Declare. - (ctf_arc_bufopen): Remove. - (ctf_archive_internal) : New. - * ctf-archive.c (ctf_arc_close): Use it. - (ctf_arc_bufopen): Fuse into... - (ctf_new_archive_internal): ... this, moved across from... - * ctf-open-bfd.c: ... here. - (ctf_bfdopen_ctfsect): Use ctf_arc_bufopen. - * libctf.ver: Add it. - -2020-06-26 Nick Alcock - - * ctf-create.c (ctf_add_forward): Intern in the right namespace. - (ctf_dtd_delete): Remove correspondingly. - (ctf_rollback): Likewise. - -2020-06-26 Nick Alcock - - * ctf-create.c (ctf_add_type_internal): Hand back existing types - unchanged. - -2020-06-26 Nick Alcock - - * ctf-create.c (ctf_add_forward): Don't add forwards to - types that already exist. - -2020-06-26 Nick Alcock - - * ctf-open.c (init_types): Only intern root-visible types. - * ctf-create.c (ctf_dtd_insert): Likewise. - (ctf_dtd_delete): Only remove root-visible types. - (ctf_rollback): Likewise. - (ctf_add_generic): Adjust. - (ctf_add_struct_sized): Adjust comment. - (ctf_add_union_sized): Likewise. - (ctf_add_enum): Likewise. - * ctf-impl.h (ctf_dtd_insert): Adjust prototype. - -2020-03-11 John Baldwin - - * swap.h (bswap_identity_64): Make static. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-05 Joel Brobecker - - PR binutils/25155: - * configure.ac: Add AC_CHECK_DECLS([asprintf]). - * configure, config.h.in: Regenerate. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -2019-10-16 Simon Marchi - - * swap.h (bswap_16, bswap_32, bswap_64): Make static. - -2019-09-30 Nick Alcock - - * ctf-open.c (ctf_bufopen_internal): Fix tabdamage. - * ctf-types.c (ctf_type_lname): Likewise. - -2019-09-23 Nick Alcock - - * ctf-open.c (ctf_import): Do not leak a ctf_file_t ref on every - ctf_import after the first for a given file. - -2019-09-23 Nick Alcock - - * ctf-impl.h (ctf_str_append_noerr): Declare. - * ctf-util.c (ctf_str_append_noerr): Define in terms of - ctf_str_append. - * ctf-dump.c (str_append): New, call it. - (ctf_dump_format_type): Use str_append, not ctf_str_append. - (ctf_dump_label): Likewise. - (ctf_dump_objts): Likewise. - (ctf_dump_funcs): Likewise. - (ctf_dump_var): Likewise. - (ctf_dump_member): Likewise. - (ctf_dump_type): Likewise. - (ctf_dump): Likewise. - -2019-09-23 Nick Alcock - - * ctf-impl.h (ctf_alloc): Remove. - (ctf_free): Likewise. - (ctf_strdup): Likewise. - * ctf-subr.c (ctf_alloc): Remove. - (ctf_free): Likewise. - * ctf-util.c (ctf_strdup): Remove. - - * ctf-create.c (ctf_serialize): Use malloc, not ctf_alloc; free, not - ctf_free; strdup, not ctf_strdup. - (ctf_dtd_delete): Likewise. - (ctf_dvd_delete): Likewise. - (ctf_add_generic): Likewise. - (ctf_add_function): Likewise. - (ctf_add_enumerator): Likewise. - (ctf_add_member_offset): Likewise. - (ctf_add_variable): Likewise. - (membadd): Likewise. - (ctf_compress_write): Likewise. - (ctf_write_mem): Likewise. - * ctf-decl.c (ctf_decl_push): Likewise. - (ctf_decl_fini): Likewise. - (ctf_decl_sprintf): Likewise. Check for OOM. - * ctf-dump.c (ctf_dump_append): Use malloc, not ctf_alloc; free, not - ctf_free; strdup, not ctf_strdup. - (ctf_dump_free): Likewise. - (ctf_dump): Likewise. - * ctf-open.c (upgrade_types_v1): Likewise. - (init_types): Likewise. - (ctf_file_close): Likewise. - (ctf_bufopen_internal): Likewise. Check for OOM. - (ctf_parent_name_set): Likewise: report the OOM to the caller. - (ctf_cuname_set): Likewise. - (ctf_import): Likewise. - * ctf-string.c (ctf_str_purge_atom_refs): Use malloc, not ctf_alloc; - free, not ctf_free; strdup, not ctf_strdup. - (ctf_str_free_atom): Likewise. - (ctf_str_create_atoms): Likewise. - (ctf_str_add_ref_internal): Likewise. - (ctf_str_remove_ref): Likewise. - (ctf_str_write_strtab): Likewise. - -2019-08-09 Nick Alcock - - * ctf-types.c (ctf_type_encoding): Fix the dynamic case to - work right for non-int/fps. - -2019-08-08 Nick Alcock - - * ctf-types.c (ctf_type_name): Don't strlen a potentially- - null pointer. - -2019-08-07 Nick Alcock - - * ctf-impl.h (ctf_file_t) : New. - * ctf-open.c (ctf_file_close): Free it. - * ctf-create.c (ctf_serialize): Adjust. - (membcmp): When reporting a conflict due to an error, report the - error. - (ctf_add_type): Turn into a ctf_add_processing wrapper. Rename to... - (ctf_add_type_internal): ... this. Hand back types we are already - in the middle of adding immediately. Hand back structs/unions with - the same number of members immediately. Do not walk the dynamic - list. Call ctf_add_type_internal, not ctf_add_type. Handle - forwards promoted to other types and the inverse case identically. - Add structs to the mapping as soon as we intern them, before they - gain any members. - -2019-08-09 Nick Alcock - - * ctf-impl.h (ctf_names_t): New. - (ctf_lookup_t) : Now a ctf_names_t, not a ctf_hash_t. - (ctf_file_t) : Likewise. - : Likewise. - : Likewise. - : Likewise. - : Improve comment. - : New. - : New. - : New. - : Remove, redundant to the names hashes. - : Remove, redundant to ctf_typemax. - (ctf_dtdef_t) : Remove. - : Note that the ctt_name is now populated. - (ctf_str_atom_t) : This is now the strtab - offset for internal strings too. - : New, the external strtab offset. - (CTF_INDEX_TO_TYPEPTR): Handle the LCTF_RDWR case. - (ctf_name_table): New declaration. - (ctf_lookup_by_rawname): Likewise. - (ctf_lookup_by_rawhash): Likewise. - (ctf_set_ctl_hashes): Likewise. - (ctf_serialize): Likewise. - (ctf_dtd_insert): Adjust. - (ctf_simple_open_internal): Likewise. - (ctf_bufopen_internal): Likewise. - (ctf_list_empty_p): Likewise. - (ctf_str_remove_ref): Likewise. - (ctf_str_add): Returns uint32_t now. - (ctf_str_add_ref): Likewise. - (ctf_str_add_external): Now returns a boolean (int). - * ctf-string.c (ctf_strraw_explicit): Check the ctf_prov_strtab - for strings in the appropriate range. - (ctf_str_create_atoms): Create the ctf_prov_strtab. Detect OOM - when adding the null string to the new strtab. - (ctf_str_free_atoms): Destroy the ctf_prov_strtab. - (ctf_str_add_ref_internal): Add make_provisional argument. If - make_provisional, populate the offset and fill in the - ctf_prov_strtab accordingly. - (ctf_str_add): Return the offset, not the string. - (ctf_str_add_ref): Likewise. - (ctf_str_add_external): Return a success integer. - (ctf_str_remove_ref): New, remove a single ref. - (ctf_str_count_strtab): Do not count the initial null string's - length or the existence or length of any unreferenced internal - atoms. - (ctf_str_populate_sorttab): Skip atoms with no refs. - (ctf_str_write_strtab): Populate the nullstr earlier. Add one - to the cts_len for the null string, since it is no longer done - in ctf_str_count_strtab. Adjust for csa_external_offset rename. - Populate the csa_offset for both internal and external cases. - Flush the ctf_prov_strtab afterwards, and reset the - ctf_str_prov_offset. - * ctf-create.c (ctf_grow_ptrtab): New. - (ctf_create): Call it. Initialize new fields rather than old - ones. Tell ctf_bufopen_internal that this is a writable dictionary. - Set the ctl hashes and data model. - (ctf_update): Rename to... - (ctf_serialize): ... this. Leave a compatibility function behind. - Tell ctf_simple_open_internal that this is a writable dictionary. - Pass the new fields along from the old dictionary. Drop - ctf_dtnextid and ctf_dtbyname. Use ctf_strraw, not dtd_name. - Do not zero out the DTD's ctt_name. - (ctf_prefixed_name): Rename to... - (ctf_name_table): ... this. No longer return a prefixed name: return - the applicable name table instead. - (ctf_dtd_insert): Use it, and use the right name table. Pass in the - kind we're adding. Migrate away from dtd_name. - (ctf_dtd_delete): Adjust similarly. Remove the ref to the - deleted ctt_name. - (ctf_dtd_lookup_type_by_name): Remove. - (ctf_dynamic_type): Always return NULL on read-only dictionaries. - No longer check ctf_dtnextid: check ctf_typemax instead. - (ctf_snapshot): No longer use ctf_dtnextid: use ctf_typemax instead. - (ctf_rollback): Likewise. No longer fail with ECTF_OVERROLLBACK. Use - ctf_name_table and the right name table, and migrate away from - dtd_name as in ctf_dtd_delete. - (ctf_add_generic): Pass in the kind explicitly and pass it to - ctf_dtd_insert. Use ctf_typemax, not ctf_dtnextid. Migrate away - from dtd_name to using ctf_str_add_ref to populate the ctt_name. - Grow the ptrtab if needed. - (ctf_add_encoded): Pass in the kind. - (ctf_add_slice): Likewise. - (ctf_add_array): Likewise. - (ctf_add_function): Likewise. - (ctf_add_typedef): Likewise. - (ctf_add_reftype): Likewise. Initialize the ctf_ptrtab, checking - ctt_name rather than dtd_name. - (ctf_add_struct_sized): Pass in the kind. Use - ctf_lookup_by_rawname, not ctf_hash_lookup_type / - ctf_dtd_lookup_type_by_name. - (ctf_add_union_sized): Likewise. - (ctf_add_enum): Likewise. - (ctf_add_enum_encoded): Likewise. - (ctf_add_forward): Likewise. - (ctf_add_type): Likewise. - (ctf_compress_write): Call ctf_serialize: adjust for ctf_size not - being initialized until after the call. - (ctf_write_mem): Likewise. - (ctf_write): Likewise. - * ctf-archive.c (arc_write_one_ctf): Likewise. - * ctf-lookup.c (ctf_lookup_by_name): Use ctf_lookuup_by_rawhash, not - ctf_hash_lookup_type. - (ctf_lookup_by_id): No longer check the readonly types if the - dictionary is writable. - * ctf-open.c (init_types): Assert that this dictionary is not - writable. Adjust to use the new name hashes, ctf_name_table, - and ctf_ptrtab_len. GNU style fix for the final ptrtab scan. - (ctf_bufopen_internal): New 'writable' parameter. Flip on LCTF_RDWR - if set. Drop out early when dictionary is writable. Split the - ctf_lookups initialization into... - (ctf_set_cth_hashes): ... this new function. - (ctf_simple_open_internal): Adjust. New 'writable' parameter. - (ctf_simple_open): Adjust accordingly. - (ctf_bufopen): Likewise. - (ctf_file_close): Destroy the appropriate name hashes. No longer - destroy ctf_dtbyname, which is gone. - (ctf_getdatasect): Remove spurious "extern". - * ctf-types.c (ctf_lookup_by_rawname): New, look up types in the - specified name table, given a kind. - (ctf_lookup_by_rawhash): Likewise, given a ctf_names_t *. - (ctf_member_iter): Add support for iterating over the - dynamic type list. - (ctf_enum_iter): Likewise. - (ctf_variable_iter): Likewise. - (ctf_type_rvisit): Likewise. - (ctf_member_info): Add support for types in the dynamic type list. - (ctf_enum_name): Likewise. - (ctf_enum_value): Likewise. - (ctf_func_type_info): Likewise. - (ctf_func_type_args): Likewise. - * ctf-link.c (ctf_accumulate_archive_names): No longer call - ctf_update. - (ctf_link_write): Likewise. - (ctf_link_intern_extern_string): Adjust for new - ctf_str_add_external return value. - (ctf_link_add_strtab): Likewise. - * ctf-util.c (ctf_list_empty_p): New. - -2019-08-05 Nick Alcock - - * ctf-types.c (ctf_type_resolve): Return ECTF_NONREPRESENTABLE on - type zero. - * ctf-create.c (ctf_add_type): Detect and skip nonrepresentable - members and types. - (ctf_add_variable): Likewise for variables pointing to them. - * ctf-link.c (ctf_link_one_type): Do not warn for nonrepresentable - type link failure, but do warn for others. - * ctf-dump.c (ctf_dump_format_type): Likewise. Do not assume all - errors to be ENOMEM. - (ctf_dump_member): Likewise. - (ctf_dump_type): Likewise. - (ctf_dump_header_strfield): Do not assume all errors to be ENOMEM. - (ctf_dump_header_sectfield): Do not assume all errors to be ENOMEM. - (ctf_dump_header): Likewise. - (ctf_dump_label): likewise. - (ctf_dump_objts): likewise. - (ctf_dump_funcs): likewise. - (ctf_dump_var): likewise. - (ctf_dump_str): Likewise. - -2019-09-30 Nick Alcock - - * configure.ac (AC_DISABLE_SHARED): New, like opcodes/. - (LT_INIT): Likewise. - (AM_INSTALL_LIBBFD): Likewise. - (dlopen): Note why this is necessary in a comment. - (SHARED_LIBADD): Initialize for possibly-PIC libiberty: derived from - opcodes/. - (SHARED_LDFLAGS): Likewise. - (BFD_LIBADD): Likewise, for libbfd. - (BFD_DEPENDENCIES): Likewise. - (VERSION_FLAGS): Initialize, using a version script if ld supports - one, or libtool -export-symbols-regex otherwise. - (AC_CONFIG_MACRO_DIR): Add ../BFD. - * Makefile.am (ACLOCAL_AMFLAGS): Likewise. - (INCDIR): New. - (AM_CPPFLAGS): Use $(srcdir), not $(top_srcdir). - (noinst_LIBRARIES): Replace with... - [INSTALL_LIBBFD] (lib_LTLIBRARIES): This, or... - [!INSTALL_LIBBFD] (noinst_LTLIBRARIES): ... this, mentioning new - libctf-nobfd.la as well. - [INSTALL_LIBCTF] (include_HEADERS): Add the CTF headers. - [!INSTALL_LIBCTF] (include_HEADERS): New, empty. - (libctf_a_SOURCES): Rename to... - (libctf_nobfd_la_SOURCES): ... this, all of libctf other than - ctf-open-bfd.c. - (libctf_la_SOURCES): Now derived from libctf_nobfd_la_SOURCES, - with ctf-open-bfd.c added. - (libctf_nobfd_la_LIBADD): New, using @SHARED_LIBADD@. - (libctf_la_LIBADD): New, using @BFD_LIBADD@ as well. - (libctf_la_DEPENDENCIES): New, using @BFD_DEPENDENCIES@. - * Makefile.am [INSTALL_LIBCTF]: Use it. - * aclocal.m4: Add ../bfd/acinclude.m4, ../config/acx.m4, and the - libtool macros. - * libctf.ver: New, everything is version LIBCTF_1.0 currently (even - the unstable components). - * Makefile.in: Regenerated. - * config.h.in: Likewise. - * configure: Likewise. - -2019-07-30 Nick Alcock - - * configure.ac (INSTALL_LIBCTF): New, controlled by - --enable-install-libctf. - [INSTALL_LIBCTF] (lib_LIBRARIES): Add libctf.a. - * Makefile.in: Regenerated. - * configure: Regenerated. - -2019-07-30 Nick Alcock - - * ctf-archive.c (ctf_arc_close): Call ctfi_bfd_close if set. - * ctf-open-bfd.c (ctf_bfdclose): Fix comment. - -2019-07-30 Nick Alcock - - * ctf-open-bfd.c (ctf_fdopen): Call bfd_set_cacheable. - -2019-07-13 Nick Alcock - - * ctf-impl.h (includes): Include here. - -2019-07-30 Nick Alcock - - * ctf-open.c (flip_lbls): Eschew for-loop initial declarations. - (flip_objts): Likewise. - (flip_vars): Likewise. - (flip_types): Likewise. - -2019-07-30 Nick Alcock - - * ctf-hash.c (ctf_hashtab_insert): Pass in the key and value - freeing functions: if set, free the key and value if the slot - already exists. Always reassign the key. - (ctf_dynhash_insert): Adjust call appropriately. - (ctf_hash_insert_type): Likewise. - -2019-08-03 Nick Alcock - - * ctf-create.c (ctf_add_type): Look up and use the forwarded-to - type kind. Allow forwards to unify with pre-existing structs/ - unions/enums. - -2019-07-30 Nick Alcock - - * ctf-impl.h (ctf_file_t) : New. - : Likewise. - : Likewise. - * ctf-create.c (ctf_update): Update accordingly. - * ctf-open.c (ctf_file_close): Likewise. - * ctf-link.c (ctf_create_per_cu): Apply the cu mapping. - (ctf_link_add_cu_mapping): New. - (ctf_link_set_memb_name_changer): Likewise. - (ctf_change_parent_name): New. - (ctf_name_list_accum_cb_arg_t) : New, storage for names - allocated by the caller's ctf_link_memb_name_changer. - : Likewise. - (ctf_accumulate_archive_names): Call the ctf_link_memb_name_changer. - (ctf_link_write): Likewise (for _CTF_SECTION only): also call - ctf_change_parent_name. Free any resulting names. - -2019-07-13 Nick Alcock - - * ctf-link.c (ctf_create_per_cu): New, refactored out of... - (ctf_link_one_type): ... here, with parent-name setting added. - (check_variable): New. - (ctf_link_one_variable): Likewise. - (ctf_link_one_input_archive_member): Call it. - * ctf-error.c (_ctf_errlist): Updated with new errors. - -2019-07-13 Nick Alcock - - * ctf-impl.h (ctf_file_t): New field ctf_link_type_mapping. - (struct ctf_link_type_mapping_key): New. - (ctf_hash_type_mapping_key): Likewise. - (ctf_hash_eq_type_mapping_key): Likewise. - (ctf_add_type_mapping): Likewise. - (ctf_type_mapping): Likewise. - (ctf_dynhash_empty): Likewise. - * ctf-open.c (ctf_file_close): Update accordingly. - * ctf-create.c (ctf_update): Likewise. - (ctf_add_type): Populate the mapping. - * ctf-hash.c (ctf_hash_type_mapping_key): Hash a type mapping key. - (ctf_hash_eq_type_mapping_key): Check the key for equality. - (ctf_dynhash_insert): Fix comment typo. - (ctf_dynhash_empty): New. - * ctf-link.c (ctf_add_type_mapping): New. - (ctf_type_mapping): Likewise. - (empty_link_type_mapping): New. - (ctf_link_one_input_archive): Call it. - -2019-07-13 Nick Alcock - - * ctf-link.c: New file, linking of the string and type sections. - * Makefile.am (libctf_a_SOURCES): Add it. - * Makefile.in: Regenerate. - - * ctf-impl.h (ctf_file_t): New fields ctf_link_inputs, - ctf_link_outputs. - * ctf-create.c (ctf_update): Update accordingly. - * ctf-open.c (ctf_file_close): Likewise. - * ctf-error.c (_ctf_errlist): Updated with new errors. - -2019-07-13 Nick Alcock - - * ctf-dump.c (ctf_dump_funcs): Check the right error value. - -2019-07-13 Nick Alcock - - * ctf-dump.c (ctf_dump): Use ctf_type_iter_all to dump types, not - ctf_type_iter. - (ctf_dump_type): Pass down the flag from ctf_type_iter_all. - (ctf_dump_format_type): Add non-root-type { } notation. - Add root flag to prototype. - (ctf_dump_label): Adjust accordingly. - (ctf_dump_objts): Likewise. - (ctf_dump_var): Likewise. - -2019-07-13 Nick Alcock - - * ctf-create.c (ctf_compress_write): Fix double-free. - -2019-07-13 Nick Alcock - - * ctf-archive.c (ctf_arc_write): Split off, and reimplement in terms - of... - (ctf_arc_write_fd): ... this new function. - * ctf-create.c (ctf_write_mem): New. - -2019-07-13 Nick Alcock - - * ctf-impl.h (ctf_str_atom_t) : New field. - (ctf_file_t) : Likewise. - (ctf_str_add_ref): Name the last arg. - (ctf_str_add_external) New. - (ctf_str_add_strraw_explicit): Likewise. - (ctf_simple_open_internal): Likewise. - (ctf_bufopen_internal): Likewise. - - * ctf-string.c (ctf_strraw_explicit): Split from... - (ctf_strraw): ... here, with new support for ctf_syn_ext_strtab. - (ctf_str_add_ref_internal): Return the atom, not the - string. - (ctf_str_add): Adjust accordingly. - (ctf_str_add_ref): Likewise. Move up in the file. - (ctf_str_add_external): New: update the csa_offset. - (ctf_str_count_strtab): Only account for strings with no csa_offset - in the internal strtab length. - (ctf_str_write_strtab): If the csa_offset is set, update the - string's refs without writing the string out, and update the - ctf_syn_ext_strtab. Make OOM handling less ugly. - * ctf-create.c (struct ctf_sort_var_arg_cb): New. - (ctf_update): Handle failure to populate the strtab. Pass in the - new ctf_sort_var arg. Adjust for ctf_syn_ext_strtab addition. - Call ctf_simple_open_internal, not ctf_simple_open. - (ctf_sort_var): Call ctf_strraw_explicit rather than looking up - strings by hand. - * ctf-hash.c (ctf_hash_insert_type): Likewise (but using - ctf_strraw). Adjust to diagnose ECTF_STRTAB nonetheless. - * ctf-open.c (init_types): No longer filter out ECTF_STRTAB. - (ctf_file_close): Destroy the ctf_syn_ext_strtab. - (ctf_simple_open): Rename to, and reimplement as a wrapper around... - (ctf_simple_open_internal): ... this new function, which calls - ctf_bufopen_internal. - (ctf_bufopen): Rename to, and reimplement as a wrapper around... - (ctf_bufopen_internal): ... this new function, which sets - ctf_syn_ext_strtab. - -2019-07-13 Nick Alcock - - * ctf_types.c (ctf_type_iter_all): New. - -2019-07-13 Nick Alcock - - * ctf-open.c (init_symtab): Check for overflow against the right - section. - (upgrade_header): Set cth_objtidxoff, cth_funcidxoff to zero-length. - (upgrade_types_v1): Note that these sections are not checked. - (flip_header): Endian-swap the header fields. - (flip_ctf): Endian-swap the sections. - (flip_objts): Update comment. - (ctf_bufopen): Check header offsets and alignment for validity. - -2019-07-13 Nick Alcock - - * ctf-open-bfd.c: Add . - (ctf_bfdopen_ctfsect): Open string and symbol tables using - techniques borrowed from bfd_elf_sym_name. - (ctf_new_archive_internal): Improve comment. - * ctf-archive.c (ctf_arc_close): Do not free the ctfi_strsect. - * ctf-open.c (ctf_bufopen): Allow opening with a string section but - no symbol section, but not vice versa. - -2019-07-08 Nick Alcock - - * ctf-impl.h (ctf_file_t): New field ctf_openflags. - * ctf-open.c (ctf_bufopen): Set it. No longer dump header offsets. - * ctf-dump.c (dump_header): New function, dump the CTF header. - (ctf_dump): Call it. - (ctf_dump_header_strfield): New function. - (ctf_dump_header_sectfield): Likewise. - -2019-07-06 Nick Alcock - - * ctf-impl.h (ctf_file_t): New fields ctf_header, ctf_dynbase, - ctf_cuname, ctf_dyncuname: ctf_base and ctf_buf are no longer const. - * ctf-open.c (ctf_set_base): Preserve the gap between ctf_buf and - ctf_base: do not assume that it is always sizeof (ctf_header_t). - Print out ctf_cuname: only print out ctf_parname if set. - (ctf_free_base): Removed, ctf_base is no longer freed: free - ctf_dynbase instead. - (ctf_set_version): Fix spacing. - (upgrade_header): New, in-place header upgrading. - (upgrade_types): Rename to... - (upgrade_types_v1): ... this. Free ctf_dynbase, not ctf_base. No - longer track old and new headers separately. No longer allow for - header sizes explicitly: squeeze the headers out on upgrade (they - are preserved in fp->ctf_header). Set ctf_dynbase, ctf_base and - ctf_buf explicitly. Use ctf_free, not ctf_free_base. - (upgrade_types): New, also handle ctf_parmax updating. - (flip_header): Flip ctf_cuname. - (flip_types): Flip BUF explicitly rather than deriving BUF from - BASE. - (ctf_bufopen): Store the header in fp->ctf_header. Correct minimum - required alignment of objtoff and funcoff. No longer store it in - the ctf_buf unless that buf is derived unmodified from the input. - Set ctf_dynbase where ctf_base is dynamically allocated. Drop locals - that duplicate fields in ctf_file: move allocation of ctf_file - further up instead. Call upgrade_header as needed. Move - version-specific ctf_parmax initialization into upgrade_types. More - concise error handling. - (ctf_file_close): No longer test for null pointers before freeing. - Free ctf_dyncuname, ctf_dynbase, and ctf_header. Do not call - ctf_free_base. - (ctf_cuname): New. - (ctf_cuname_set): New. - * ctf-create.c (ctf_update): Populate ctf_cuname. - (ctf_gzwrite): Write out the header explicitly. Remove obsolescent - comment. - (ctf_write): Likewise. - (ctf_compress_write): Get the header from ctf_header, not ctf_base. - Fix the compression length: fp->ctf_size never counted the CTF - header. Simplify the compress call accordingly. - -2019-07-11 Hans-Peter Nilsson - - * ctf-endian.h: Don't assume htole64 and le64toh are always - present if HAVE_ENDIAN_H; also check if htole64 is defined. - [!WORDS_BIGENDIAN] (htole64, le64toh): Define as identity, - not bswap_identity_64. - -2019-09-18 Alan Modra - - * ctf-open-bfd.c: Update throughout for bfd section macro changes. - -2019-09-09 Phil Blundell - - binutils 2.33 branch created. - -2019-07-18 Nick Alcock - - * ctf-types.c (ctf_type_aname_raw): New. - (ctf_func_type_info): Likewise. - (ctf_func_type_args): Likewise. - * ctf-error.c (_ctf_errlist): Fix description. - * ctf-lookup.c: Fix file description. - -2019-06-28 Nick Alcock - - * ctf-create.c (ctf_create): Fix off-by-one error. - -2019-06-28 Nick Alcock - - * ctf-impl.h: (struct ctf_strs_writable): New, non-const version of - struct ctf_strs. - (struct ctf_dtdef): Note that dtd_data.ctt_name is unpopulated. - (struct ctf_str_atom): New, disambiguated single string. - (struct ctf_str_atom_ref): New, points to some other location that - references this string's offset. - (struct ctf_file): New members ctf_str_atoms and ctf_str_num_refs. - Remove member ctf_dtvstrlen: we no longer track the total strlen - as we add strings. - (ctf_str_create_atoms): Declare new function in ctf-string.c. - (ctf_str_free_atoms): Likewise. - (ctf_str_add): Likewise. - (ctf_str_add_ref): Likewise. - (ctf_str_rollback): Likewise. - (ctf_str_purge_refs): Likewise. - (ctf_str_write_strtab): Likewise. - (ctf_realloc): Declare new function in ctf-util.c. - - * ctf-open.c (ctf_bufopen): Create the atoms table. - (ctf_file_close): Destroy it. - * ctf-create.c (ctf_update): Copy-and-free it on update. No longer - special-case the position of the parname string. Construct the - strtab by calling ctf_str_add_ref and ctf_str_write_strtab after the - rest of each buffer element is constructed, not via open-coding: - realloc the CTF buffer and append the strtab to it. No longer - maintain ctf_dtvstrlen. Sort the variable entry table later, after - strtab construction. - (ctf_copy_membnames): Remove: integrated into ctf_copy_{s,l,e}members. - (ctf_copy_smembers): Drop the string offset: call ctf_str_add_ref - after buffer element construction instead. - (ctf_copy_lmembers): Likewise. - (ctf_copy_emembers): Likewise. - (ctf_create): No longer maintain the ctf_dtvstrlen. - (ctf_dtd_delete): Likewise. - (ctf_dvd_delete): Likewise. - (ctf_add_generic): Likewise. - (ctf_add_enumerator): Likewise. - (ctf_add_member_offset): Likewise. - (ctf_add_variable): Likewise. - (membadd): Likewise. - * ctf-util.c (ctf_realloc): New, wrapper around realloc that aborts - if there are active ctf_str_num_refs. - (ctf_strraw): Move to ctf-string.c. - (ctf_strptr): Likewise. - * ctf-string.c: New file, strtab manipulation. - - * Makefile.am (libctf_a_SOURCES): Add it. - * Makefile.in: Regenerate. - -2019-06-28 Nick Alcock - - * ctf-impl.h (ctf_hash_iter_f): New. - (ctf_dynhash_iter): New declaration. - (ctf_dynhash_iter_remove): New declaration. - * ctf-hash.c (ctf_dynhash_iter): Define. - (ctf_dynhash_iter_remove): Likewise. - (ctf_hashtab_traverse): New. - (ctf_hashtab_traverse_remove): Likewise. - (struct ctf_traverse_cb_arg): Likewise. - (struct ctf_traverse_remove_cb_arg): Likewise. - -2019-06-28 Nick Alcock - - * ctf-hash.c (ctf_dynhash_remove): Call with a mocked-up element. - -2019-06-28 Nick Alcock - - * ctf-dump.c (ctf_dump_format_type): Prefix hex strings with 0x. - (ctf_dump_funcs): Likewise. - -2019-06-19 Nick Alcock - - * ctf-open-bfd.c: Add swap.h and ctf-endian.h. - (ctf_fdopen): Check for endian-swapped raw CTF magic, and - little-endian CTF archive magic. Do not check the CTF version: - ctf_simple_open does that in endian-safe ways. Do not dereference - null pointers on open failure. - -2019-06-19 Nick Alcock - - * ctf-open.c (get_vbytes_common): Return the new slice size. - (ctf_bufopen): Flip the endianness of the CTF-section header copy. - Remember to copy in the CTF data when opening an uncompressed - foreign-endian CTF file. Prune useless variable manipulation. - -2019-06-19 Nick Alcock - - * ctf-open.c (ctf_types): Fail when unidentified type kinds are - seen. - -2019-06-19 Nick Alcock - - * ctf-open.c (ctf_bufopen): Dump header offsets into the debugging - output. - -2019-06-19 Nick Alcock - - * ctf-subr.c (_PAGESIZE): Remove. - (ctf_data_alloc): Likewise. - (ctf_data_free): Likewise. - (ctf_data_protect): Likewise. - * ctf-impl.h: Remove declarations. - * ctf-create.c (ctf_update): No longer call ctf_data_protect: use - ctf_free, not ctf_data_free. - (ctf_compress_write): Use ctf_data_alloc, not ctf_alloc. Free - the buffer again on compression error. - * ctf-open.c (ctf_set_base): No longer track the size: call - ctf_free, not ctf_data_free. - (upgrade_types): Likewise. Call ctf_alloc, not ctf_data_alloc. - (ctf_bufopen): Likewise. No longer call ctf_data_protect. - -2019-06-19 Nick Alcock - - * ctf-create.c (ctf_dtd_insert): Pass on error returns from - ctf_dynhash_insert. - (ctf_dvd_insert): Likewise. - (ctf_add_generic): Likewise. - (ctf_add_variable): Likewise. - * ctf-impl.h: Adjust declarations. - -2019-06-14 Alan Modra - - * configure: Regenerate. - -2019-06-06 Nick Alcock - - * ctf-decls.h: Include . - * ctf-lookup.c (ctf_lookup_by_name): Call xstrndup(), not strndup(). - -2019-06-06 Nick Alcock - - * ctf-dump.c (ctf_dump_format_type): Cast size_t's used in printf()s. - (ctf_dump_objts): Likewise. - (ctf_dump_funcs): Likewise. - (ctf_dump_member): Likewise. - (ctf_dump_str): Likewise. - -2019-06-06 Nick Alcock - - * ctf-archive.c (arc_mmap_header): Mark fd as potentially unused. - * ctf-subr.c (ctf_data_protect): Mark both args as potentially unused. - -2019-06-05 Nick Alcock - - * ctf-archive.c (ctf_arc_write): Eschew %zi format specifier. - (ctf_arc_open_by_offset): Likewise. - * ctf-create.c (ctf_add_type): Likewise. - -2019-06-04 Tom Tromey - - * ctf-create.c (ctf_add_encoded, ctf_add_slice) - (ctf_add_member_offset): Use CHAR_BIT, not NBBY. - -2019-06-04 Nick Alcock - - * configure.ac: Check for O_CLOEXEC. - * ctf-decls.h (O_CLOEXEC): Define (to 0), if need be. - * config.h.in: Regenerate. - * configure: Likewise. - -2019-06-04 Nick Alcock - - * qsort_r.c: Rename to... - * ctf-qsort_r.c: ... this. - (_quicksort): Define to ctf_qsort_r. - * ctf-decls.h (qsort_r): Remove. - (ctf_qsort_r): Add. - (struct ctf_qsort_arg): New, transport the real ARG and COMPAR. - (ctf_qsort_compar_thunk): Rearrange the arguments to COMPAR. - * Makefile.am (libctf_a_LIBADD): Remove. - (libctf_a_SOURCES): New, add ctf-qsort_r.c. - * ctf-archive.c (ctf_arc_write): Call ctf_qsort_r, not qsort_r. - * ctf-create.c (ctf_update): Likewise. - * configure.ac: Check for BSD versus GNU qsort_r signature. - * Makefile.in: Regenerate. - * config.h.in: Likewise. - * configure: Likewise. - -2019-06-03 Nick Alcock - - * ctf-dump.c (ctf_dump_funcs): Free in the right place. - -2019-05-29 Nick Alcock - - * Makefile.am (ZLIB): New. - (ZLIBINC): Likewise. - (AM_CFLAGS): Use them. - (libctf_a_LIBADD): New, for LIBOBJS. - * configure.ac: Check for zlib, endian.h, and qsort_r. - * ctf-endian.h: New, providing htole64 and le64toh. - * swap.h: Code style fixes. - (bswap_identity_64): New. - * qsort_r.c: New, from gnulib (with one added #include). - * ctf-decls.h: New, providing a conditional qsort_r declaration, - and unconditional definitions of MIN and MAX. - * ctf-impl.h: Use it. Do not use . - (ctf_set_errno): Now returns unsigned long. - * ctf-util.c (ctf_set_errno): Adjust here too. - * ctf-archive.c: Use ctf-endian.h. - (ctf_arc_open_by_offset): Use memset, not bzero. Drop cts_type, - cts_flags and cts_offset. - (ctf_arc_write): Drop debugging dependent on the size of off_t. - * ctf-create.c: Provide a definition of roundup if not defined. - (ctf_create): Drop cts_type, cts_flags and cts_offset. - (ctf_add_reftype): Do not check if type IDs are below zero. - (ctf_add_slice): Likewise. - (ctf_add_typedef): Likewise. - (ctf_add_member_offset): Cast error-returning ssize_t's to size_t - when known error-free. Drop CTF_ERR usage for functions returning - int. - (ctf_add_member_encoded): Drop CTF_ERR usage for functions returning - int. - (ctf_add_variable): Likewise. - (enumcmp): Likewise. - (enumadd): Likewise. - (membcmp): Likewise. - (ctf_add_type): Likewise. Cast error-returning ssize_t's to size_t - when known error-free. - * ctf-dump.c (ctf_is_slice): Drop CTF_ERR usage for functions - returning int: use CTF_ERR for functions returning ctf_type_id. - (ctf_dump_label): Likewise. - (ctf_dump_objts): Likewise. - * ctf-labels.c (ctf_label_topmost): Likewise. - (ctf_label_iter): Likewise. - (ctf_label_info): Likewise. - * ctf-lookup.c (ctf_func_args): Likewise. - * ctf-open.c (upgrade_types): Cast to size_t where appropriate. - (ctf_bufopen): Likewise. Use zlib types as needed. - * ctf-types.c (ctf_member_iter): Drop CTF_ERR usage for functions - returning int. - (ctf_enum_iter): Likewise. - (ctf_type_size): Likewise. - (ctf_type_align): Likewise. Cast to size_t where appropriate. - (ctf_type_kind_unsliced): Likewise. - (ctf_type_kind): Likewise. - (ctf_type_encoding): Likewise. - (ctf_member_info): Likewise. - (ctf_array_info): Likewise. - (ctf_enum_value): Likewise. - (ctf_type_rvisit): Likewise. - * ctf-open-bfd.c (ctf_bfdopen): Drop cts_type, cts_flags and - cts_offset. - (ctf_simple_open): Likewise. - (ctf_bfdopen_ctfsect): Likewise. Set cts_size properly. - * Makefile.in: Regenerate. - * aclocal.m4: Likewise. - * config.h: Likewise. - * configure: Likewise. - -2019-05-28 Nick Alcock - - * configure.in: Check for bfd_section_from_elf_index. - * configure: Regenerate. - * config.h.in [HAVE_BFD_ELF]: Likewise. - * libctf/ctf_open_bfd (ctf_bfdopen_ctfsect): Use it. - abfd is potentially unused now. - -2019-05-28 Nick Alcock - - * Makefile.am: New. - * Makefile.in: Regenerated. - * config.h.in: Likewise. - * aclocal.m4: Likewise. - * configure: Likewise. - -2019-05-28 Nick Alcock - - * ctf-dump.c: New. - -2019-05-28 Nick Alcock - - * ctf-labels.c: New. - -2019-05-28 Nick Alcock - - * ctf-impl.h (_libctf_version): New declaration. - * ctf-subr.c (_libctf_version): Define it. - (ctf_version): New. - -2019-05-28 Nick Alcock - - * ctf-create.c (enumcmp): New. - (enumadd): Likewise. - (membcmp): Likewise. - (membadd): Likewise. - (ctf_add_type): Likewise. - -2019-05-28 Nick Alcock - - * ctf-lookup.c (isqualifier): New. - (ctf_lookup_by_name): Likewise. - (struct ctf_lookup_var_key): Likewise. - (ctf_lookup_var): Likewise. - (ctf_lookup_variable): Likewise. - (ctf_lookup_symbol_name): Likewise. - (ctf_lookup_by_symbol): Likewise. - (ctf_func_info): Likewise. - (ctf_func_args): Likewise. - -2019-05-28 Nick Alcock - - * ctf-decl.c: New file. - * ctf-types.c: Likewise. - * ctf-impl.h: New declarations. - -2019-05-28 Nick Alcock - - * ctf-open-bfd.c: New file. - * ctf-open.c (ctf_close): New. - * ctf-impl.h: Include bfd.h. - (ctf_file): New members ctf_data_mmapped, ctf_data_mmapped_len. - (ctf_archive_internal): New members ctfi_abfd, ctfi_data, - ctfi_bfd_close. - (ctf_bfdopen_ctfsect): New declaration. - (_CTF_SECTION): likewise. - -2019-05-28 Nick Alcock - - * ctf-archive.c: New. - * ctf-impl.h (ctf_archive_internal): New type. - (ctf_arc_open_internal): New declaration. - (ctf_arc_bufopen): Likewise. - (ctf_arc_close_internal): Likewise. - -2019-05-28 Nick Alcock - - * ctf-open.c: New file. - * swap.h: Likewise. - -2019-05-28 Nick Alcock - - * ctf-create.c: New file. - * ctf-lookup.c: New file. - -2019-05-28 Nick Alcock - - * ctf-impl.h: New definitions and declarations for type creation - and lookup. - -2019-05-28 Nick Alcock - - * ctf-hash.c: New file. - * ctf-impl.h: New declarations. - -2019-05-28 Nick Alcock - - * ctf-error.c: New file. - -2019-05-28 Nick Alcock - - * ctf-util.c: New file. - * elf.h: Likewise. - * ctf-impl.h: Include it, and add declarations. - -2019-05-28 Nick Alcock +For older changes see ChangeLog-2020 + +Copyright (C) 2021 Free Software Foundation, Inc. - * ctf-impl.h: New file. - * ctf-subr.c: New file. +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. - Local Variables: mode: change-log left-margin: 8 -fill-column: 76 +fill-column: 74 version-control: never End: diff --git a/libctf/ChangeLog-2020 b/libctf/ChangeLog-2020 new file mode 100644 index 00000000000..f12c88acfa2 --- /dev/null +++ b/libctf/ChangeLog-2020 @@ -0,0 +1,1954 @@ +2020-09-23 H.J. Lu + + PR libctf/26934 + * ctf-dump.c (ctf_dump_objts): Pass format argument to asprintf. + +2020-11-23 Nick Alcock + + * ctf-impl.h (ctf_dict_t) : New. + (struct ctf_archive_internal) : Likewise. + * ctf-create.c (ctf_serialize): Adjust for new field. + * ctf-open.c (init_symtab): Note the semantics of repeated calls. + (ctf_symsect_endianness): New. + (ctf_bufopen_internal): Set ctf_symtab_little_endian suitably for + the native endianness. + (_Static_assert): Moved... + (swap_thing): ... with this... + * swap.h: ... to here. + * ctf-util.c (ctf_elf32_to_link_sym): Use it, byteswapping the + Elf32_Sym if the ctf_symtab_little_endian demands it. + (ctf_elf64_to_link_sym): Likewise swap the Elf64_Sym if needed. + * ctf-archive.c (ctf_arc_symsect_endianness): New, set the + endianness of the symtab used by the dicts in an archive. + (ctf_archive_iter_internal): Initialize to unknown (assumed native, + do not call ctf_symsect_endianness). + (ctf_dict_open_by_offset): Call ctf_symsect_endianness if need be. + (ctf_dict_open_internal): Propagate the endianness down. + (ctf_dict_open_sections): Likewise. + * ctf-open-bfd.c (ctf_bfdopen_ctfsect): Get the endianness from the + struct bfd and pass it down to the archive. + * libctf.ver: Add ctf_symsect_endianness and + ctf_arc_symsect_endianness. + +2020-11-20 Nick Alcock + + * ctf-link.c (ctf_link_deduplicating): Clean up the ctf_link_outputs + hash on error. + +2020-11-20 Nick Alcock + + * ctf-create.c (ctf_dtd_insert): Set ENOMEM on the dict if out of memory. + (ctf_dvd_insert): Likewise. + (ctf_add_function): Report ECTF_RDONLY if this dict is not writable. + * ctf-subr.c (ctf_err_warn): Only debug-dump passed-in warnings if + the passed-in error code is nonzero: the error on the dict for + warnings may relate to a previous error. + +2020-11-20 Nick Alcock + + * ctf-open.c (ctf_getsymsect): New. + (ctf_getstrsect): Likewise. + * libctf.ver: Add them. + +2020-11-20 Nick Alcock + + * ctf-impl.h (struct ctf_archive_internal) : New, dicts + the archive machinery has opened and cached. + : New, cache of dicts containing symbols looked up. + : New, cache of types of symbols looked up. + * ctf-archive.c (ctf_arc_close): Free them on close. + (enosym): New, flag entry for 'symbol not present'. + (ctf_arc_import_parent): New, automatically import the parent from + ".ctf" if this is a child in an archive and ".ctf" is present. + (ctf_dict_open_sections): Use it. + (ctf_archive_iter_internal): Likewise. + (ctf_cached_dict_close): New, thunk around ctf_dict_close. + (ctf_dict_open_cached): New, open and cache a dict. + (ctf_arc_flush_caches): New, flush the caches. + (ctf_arc_lookup_symbol): New, look up a symbol in (all members of) + an archive, and cache the lookup. + (ctf_archive_iter): Note the new caching behaviour. + (ctf_archive_next): Use ctf_dict_open_cached. + * libctf.ver: Add ctf_arc_lookup_symbol and ctf_arc_flush_caches. + +2020-11-20 Nick Alcock + + * ctf-dedup.c (ctf_dedup_rhash_type): Null out the names of nameless + type kinds, just in case the input has named them. + +2020-11-20 Nick Alcock + + * ctf-dump.c (ctf_dump_header): Dump the new flags bits and the index + section lengths. + (ctf_dump_objts): Report indexed sections. Also dump functions. Use + ctf_symbol_next, not manual looping. + (ctf_dump_funcs): Delete. + (ctf_dump): Use ctf_dump_objts, not ctf_dump_funcs. + +2020-11-20 Nick Alcock + + * ctf-impl.h (CTF_INDEX_PAD_THRESHOLD): New. + (_libctf_nonnull_): Likewise. + (ctf_in_flight_dynsym_t): New. + (ctf_dict_t) : Likewise. + : Likewise. + : Likewise. + : Likewise. + : Likewise. + : Likewise. + : Likewise. + : Likewise. + : Likewise. + : Likewise. + : Likewise. + : Likewise. + (struct ctf_next) : Likewise. + (ctf_symtab_skippable): New prototype. + (ctf_add_funcobjt_sym): Likewise. + (ctf_dynhash_sort_by_name): Likewise. + (ctf_sym_to_elf64): Rename to... + (ctf_elf32_to_link_sym): ... this, and... + (ctf_elf64_to_link_sym): ... this. + * ctf-open.c (init_symtab): Check for lack of CTF_F_NEWFUNCINFO + flag, and presence of index sections. Refactor out + ctf_symtab_skippable and ctf_elf*_to_link_sym, and use them. Use + ctf_link_sym_t, not Elf64_Sym. Skip initializing objt or func + sxlate sections if corresponding index section is present. Adjust + for new func info section format. + (ctf_bufopen_internal): Add ctf_err_warn to corrupt-file error + handling. Report incorrect-length index sections. Always do an + init_symtab, even if there is no symtab section (there may be index + sections still). + (flip_objts): Adjust comment: func and objt sections are actually + identical in structure now, no need to caveat. + (ctf_dict_close): Free newly-added data structures. + * ctf-create.c (ctf_create): Initialize them. + (ctf_symtab_skippable): New, refactored out of + init_symtab, with st_nameidx_set check added. + (ctf_add_funcobjt_sym): New, add a function or object symbol to the + ctf_objthash or ctf_funchash, by name. + (ctf_add_objt_sym): Call it. + (ctf_add_func_sym): Likewise. + (symtypetab_delete_nonstatic_vars): New, delete vars also present as + data objects. + (CTF_SYMTYPETAB_EMIT_FUNCTION): New flag to symtypetab emitters: + this is a function emission, not a data object emission. + (CTF_SYMTYPETAB_EMIT_PAD): New flag to symtypetab emitters: emit + pads for symbols with no type (only set for unindexed sections). + (CTF_SYMTYPETAB_FORCE_INDEXED): New flag to symtypetab emitters: + always emit indexed. + (symtypetab_density): New, figure out section sizes. + (emit_symtypetab): New, emit a symtypetab. + (emit_symtypetab_index): New, emit a symtypetab index. + (ctf_serialize): Call them, emitting suitably sorted symtypetab + sections and indexes. Set suitable header flags. Copy over new + fields. + * ctf-hash.c (ctf_dynhash_sort_by_name): New, used to impose an + order on symtypetab index sections. + * ctf-link.c (ctf_add_type_mapping): Delete erroneous comment + relating to code that was never committed. + (ctf_link_one_variable): Improve variable name. + (check_sym): New, symtypetab analogue of check_variable. + (ctf_link_deduplicating_one_symtypetab): New. + (ctf_link_deduplicating_syms): Likewise. + (ctf_link_deduplicating): Call them. + (ctf_link_deduplicating_per_cu): Note that we don't call them in + this case (yet). + (ctf_link_add_strtab): Set the error on the fp correctly. + (ctf_link_add_linker_symbol): New (no longer a do-nothing stub), add + a linker symbol to the in-flight list. + (ctf_link_shuffle_syms): New (no longer a do-nothing stub), turn the + in-flight list into a mapping we can use, now its names are + resolvable in the external strtab. + * ctf-string.c (ctf_str_rollback_atom): Don't roll back atoms with + external strtab offsets. + (ctf_str_rollback): Adjust comment. + (ctf_str_write_strtab): Migrate ctf_syn_ext_strtab population from + writeout time... + (ctf_str_add_external): ... to string addition time. + * ctf-lookup.c (ctf_lookup_var_key_t): Rename to... + (ctf_lookup_idx_key_t): ... this, now we use it for syms too. + : New member, a name table. + (ctf_lookup_var): Adjust accordingly. + (ctf_lookup_variable): Likewise. + (ctf_lookup_by_id): Shuffle further up in the file. + (ctf_symidx_sort_arg_cb): New, callback for... + (sort_symidx_by_name): ... this new function to sort a symidx + found to be unsorted (likely originating from the compiler). + (ctf_symidx_sort): New, sort a symidx. + (ctf_lookup_symbol_name): Support dynamic symbols with indexes + provided by the linker. Use ctf_link_sym_t, not Elf64_Sym. + Check the parent if a child lookup fails. + (ctf_lookup_by_symbol): Likewise. Work for function symbols too. + (ctf_symbol_next): New, iterate over symbols with types (without + sorting). + (ctf_lookup_idx_name): New, bsearch for symbol names in indexes. + (ctf_try_lookup_indexed): New, attempt an indexed lookup. + (ctf_func_info): Reimplement in terms of ctf_lookup_by_symbol. + (ctf_func_args): Likewise. + (ctf_get_dict): Move... + * ctf-types.c (ctf_get_dict): ... here. + * ctf-util.c (ctf_sym_to_elf64): Re-express as... + (ctf_elf64_to_link_sym): ... this. Add new st_symidx field, and + st_nameidx_set (always 0, so st_nameidx can be ignored). Look in + the ELF strtab for names. + (ctf_elf32_to_link_sym): Likewise, for Elf32_Sym. + (ctf_next_destroy): Destroy ctf_next_t.u.ctn_next if need be. + * libctf.ver: Add ctf_symbol_next, ctf_add_objt_sym and + ctf_add_func_sym. + +2020-11-20 Nick Alcock + + * ctf-link.c (ctf_link_shuffle_syms): Adjust. + (ctf_link_add_linker_symbol): New, unimplemented stub. + * libctf.ver: Add it. + * ctf-create.c (ctf_serialize): Set CTF_F_DYNSTR on newly-serialized + dicts. + * ctf-open-bfd.c (ctf_bfdopen_ctfsect): Check for the flag: open the + symtab/strtab if not present, dynsym/dynstr otherwise. + * ctf-archive.c (ctf_arc_bufpreamble): New, get the preamble from + some arbitrary member of a CTF archive. + * ctf-impl.h (ctf_arc_bufpreamble): Declare it. + +2020-11-20 Nick Alcock + + * ctf-archive.c (ctf_arc_open_by_offset): Rename to... + (ctf_dict_open_by_offset): ... this. Adjust callers. + (ctf_arc_open_by_name_internal): Rename to... + (ctf_dict_open_internal): ... this. Adjust callers. + (ctf_arc_open_by_name_sections): Rename to... + (ctf_dict_open_sections): ... this, keeping compatibility function. + (ctf_arc_open_by_name): Rename to... + (ctf_dict_open): ... this, keeping compatibility function. + * libctf.ver: New functions added. + * ctf-link.c (ctf_link_one_input_archive): Adjusted accordingly. + (ctf_link_deduplicating_open_inputs): Likewise. + +2020-11-20 Nick Alcock + + * ctf-impl.h: Rename ctf_file_t to ctf_dict_t: all declarations + adjusted. + (ctf_fileops): Rename to... + (ctf_dictops): ... this. + (ctf_dedup_t) : Rename to... + : ... this. + (ctf_file_t): Fix outdated comment. + : Rename to... + : ... this. + (struct ctf_archive_internal) : Rename to... + : ... this. + * ctf-archive.c: Rename ctf_file_t to ctf_dict_t. + Rename ctf_archive.ctfa_nfiles to ctfa_ndicts. + Rename ctf_file_close to ctf_dict_close. All users adjusted. + * ctf-create.c: Likewise. Refer to CTF dicts, not CTF containers. + (ctf_bundle_t) : Rename to... + + + * mkerrors.sed: Remove. + * ctf-error.c (_CTF_FIRST): New define. + (_CTF_ITEM): Define this, not _CTF_STR. + (_ctf_errlist, _ctf_erridx): Use _CTF_ERRORS. + (ERRSTRFIELD): Rewrite. + (ERRSTRFIELD1): Remove. + * Makefile.in: Rebuild. + * Makefile.am (BUILT_SOURCES): Remove. + (ctf-error.h): Remove. + +2020-08-27 Nick Alcock + + * ctf-subr.c (open_errors): New list. + (ctf_err_warn): Calls with NULL fp append to open_errors. Add err + parameter, and use it to decorate the debug stream with errmsgs. + (ctf_err_warn_to_open): Splice errors from a CTF dict into the + open_errors. + (ctf_errwarning_next): Calls with NULL fp report from open_errors. + New err param to report iteration errors (including end-of-iteration) + when fp is NULL. + (ctf_assert_fail_internal): Adjust ctf_err_warn call for new err + parameter: gettextize. + * ctf-impl.h (ctfo_get_vbytes): Add ctf_file_t parameter. + (LCTF_VBYTES): Adjust. + (ctf_err_warn_to_open): New. + (ctf_err_warn): Adjust. + (ctf_bundle): Used in only one place: move... + * ctf-create.c: ... here. + (enumcmp): Use ctf_err_warn, not ctf_dprintf, passing the err number + down as needed. Don't emit the errmsg. Gettextize. + (membcmp): Likewise. + (ctf_add_type_internal): Likewise. + (ctf_write_mem): Likewise. + (ctf_compress_write): Likewise. Report errors writing the header or + body. + (ctf_write): Likewise. + * ctf-archive.c (ctf_arc_write_fd): Use ctf_err_warn, not + ctf_dprintf, and gettextize, as above. + (ctf_arc_write): Likewise. + (ctf_arc_bufopen): Likewise. + (ctf_arc_open_internal): Likewise. + * ctf-labels.c (ctf_label_iter): Likewise. + * ctf-open-bfd.c (ctf_bfdclose): Likewise. + (ctf_bfdopen): Likewise. + (ctf_bfdopen_ctfsect): Likewise. + (ctf_fdopen): Likewise. + * ctf-string.c (ctf_str_write_strtab): Likewise. + * ctf-types.c (ctf_type_resolve): Likewise. + * ctf-open.c (get_vbytes_common): Likewise. Pass down the ctf dict. + (get_vbytes_v1): Pass down the ctf dict. + (get_vbytes_v2): Likewise. + (flip_ctf): Likewise. + (flip_types): Likewise. Use ctf_err_warn, not ctf_dprintf, and + gettextize, as above. + (upgrade_types_v1): Adjust calls. + (init_types): Use ctf_err_warn, not ctf_dprintf, as above. + (ctf_bufopen_internal): Likewise. Adjust calls. Transplant errors + emitted into individual dicts into the open errors if this turns + out to be a failed open in the end. + * ctf-dump.c (ctf_dump_format_type): Adjust ctf_err_warn for new err + argument. Gettextize. Don't emit the errmsg. + (ctf_dump_funcs): Likewise. Collapse err label into its only case. + (ctf_dump_type): Likewise. + * ctf-link.c (ctf_create_per_cu): Adjust ctf_err_warn for new err + argument. Gettextize. Don't emit the errmsg. + (ctf_link_one_type): Likewise. + (ctf_link_lazy_open): Likewise. + (ctf_link_one_input_archive): Likewise. + (ctf_link_deduplicating_count_inputs): Likewise. + (ctf_link_deduplicating_open_inputs): Likewise. + (ctf_link_deduplicating_close_inputs): Likewise. + (ctf_link_deduplicating): Likewise. + (ctf_link): Likewise. + (ctf_link_deduplicating_per_cu): Likewise. Add some missed + ctf_set_errnos to obscure error cases. + * ctf-dedup.c (ctf_dedup_rhash_type): Adjust ctf_err_warn for new + err argument. Gettextize. Don't emit the errmsg. + (ctf_dedup_populate_mappings): Likewise. + (ctf_dedup_detect_name_ambiguity): Likewise. + (ctf_dedup_init): Likewise. + (ctf_dedup_multiple_input_dicts): Likewise. + (ctf_dedup_conflictify_unshared): Likewise. + (ctf_dedup): Likewise. + (ctf_dedup_rwalk_one_output_mapping): Likewise. + (ctf_dedup_id_to_target): Likewise. + (ctf_dedup_emit_type): Likewise. + (ctf_dedup_emit_struct_members): Likewise. + (ctf_dedup_populate_type_mapping): Likewise. + (ctf_dedup_populate_type_mappings): Likewise. + (ctf_dedup_emit): Likewise. + (ctf_dedup_hash_type): Likewise. Fix a bit of messed-up error + status setting. + (ctf_dedup_rwalk_one_output_mapping): Likewise. Don't hide + unknown-type-kind messages (which signify file corruption). + +2020-08-27 Nick Alcock + + * configure.ac: Adjust package name to simply 'libctf': arbitrarily + declare this to be version 1.2.0. + * Makefile.am (AM_CPPFLAGS): Add @INCINTL@. + * Makefile.in: Regenerated. + * configure: Regenerated. + * ctf-intl.h: New file, lightly modified from opcodes/opintl.h. + * ctf-impl.h: Include it. + * ctf-error.r (_ctf_errlist_t): Mark strings as noop-translatable. + (ctf_errmsg): Actually translate them. + +2020-07-26 Eli Zaretskii + + PR binutils/25155: + * ctf-create.c (EOVERFLOW): If not defined by system header, + redirect to ERANGE as a poor man's substitute. + * ctf-subr.c (ENOTSUP): If not defined, use ENOSYS instead. + +2020-07-22 Nick Alcock + + * ctf-create.c (ctf_dtd_insert): Add uintptr_t casts. + (ctf_dtd_delete): Likewise. + (ctf_dtd_lookup): Likewise. + (ctf_rollback): Likewise. + * ctf-hash.c (ctf_hash_lookup_type): Likewise. + * ctf-types.c (ctf_lookup_by_rawhash): Likewise. + +2020-07-22 Nick Alcock + + * ctf-lookup.c (ctf_lookup_by_name): Adjust. + +2020-07-22 Nick Alcock + + * ctf-archive.c (ctf_arc_bufopen): Endian-swap the archive magic + number if needed. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_list_splice): New. + * ctf-util.h (ctf_list_splice): Likewise. + * ctf-link.c (link_sort_inputs_cb_arg_t): Likewise. + (ctf_link_sort_inputs): Likewise. + (ctf_link_deduplicating_count_inputs): Likewise. + (ctf_link_deduplicating_open_inputs): Likewise. + (ctf_link_deduplicating_close_inputs): Likewise. + (ctf_link_deduplicating_variables): Likewise. + (ctf_link_deduplicating_per_cu): Likewise. + (ctf_link_deduplicating): Likewise. + (ctf_link): Call it. + +2020-07-22 Nick Alcock + + * ctf-link.c (ctf_link_one_input_archive_member): Check + CTF_LINK_OMIT_VARIABLES_SECTION. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_type_id_key): New, the key in the + cd_id_to_file_t. + (ctf_dedup): New, core deduplicator state. + (ctf_file_t) : New. + : New. + : New. + (ctf_hash_type_id_key): New prototype. + (ctf_hash_eq_type_id_key): Likewise. + (ctf_dedup_atoms_init): Likewise. + * ctf-hash.c (ctf_hash_eq_type_id_key): New. + (ctf_dedup_atoms_init): Likewise. + * ctf-create.c (ctf_serialize): Adjusted. + (ctf_add_encoded): No longer static. + (ctf_add_reftype): Likewise. + * ctf-open.c (ctf_file_close): Destroy the + ctf_dedup_atoms_alloc. + * ctf-dedup.c: New file. + * ctf-decls.h [!HAVE_DECL_STPCPY]: Add prototype. + * configure.ac: Check for stpcpy. + * Makefile.am: Add it. + * Makefile.in: Regenerate. + * config.h.in: Regenerate. + * configure: Regenerate. + +2020-07-22 Nick Alcock + + * configure.ac: Add --enable-libctf-hash-debugging. + * aclocal.m4: Pull in enable.m4, for GCC_ENABLE. + * Makefile.in: Regenerated. + * configure: Likewise. + * config.h.in: Likewise. + * ctf-impl.h [ENABLE_LIBCTF_HASH_DEBUGGING] + (ctf_assert): Define to assert. + +2020-07-22 Nick Alcock + + * ctf-sha1.h: New, inline wrappers around sha1_init_ctx and + sha1_process_bytes. + * ctf-impl.h: Include it. + (ctf_sha1_init): New. + (ctf_sha1_add): Likewise. + (ctf_sha1_fini): Likewise. + * ctf-sha1.c: New, non-inline wrapper around sha1_finish_ctx + producing strings. + * Makefile.am: Add file. + * Makefile.in: Regenerate. + +2020-07-22 Nick Alcock + + * libctf.ver (ctf_link_set_variable_filter): Add. + * ctf-impl.h (ctf_file_t) : New. + : Likewise. + * ctf-create.c (ctf_serialize): Adjust. + * ctf-link.c (ctf_link_set_variable_filter): New, set it. + (ctf_link_one_variable): Call it if set. + +2020-07-22 Nick Alcock + + * ctf-link.c (ctf_link_one_variable): Check the dst_type for + conflicts, not the source type. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_file_t): Improve comments. + : Split into... + : ... this... + : ... and this. + * ctf-create.c (ctf_serialize): Adjust. + * ctf-open.c (ctf_file_close): Likewise. + * ctf-link.c (ctf_create_per_cu): Look things up in the + in_cu_mapping instead of the cu_mapping. + (ctf_link_add_cu_mapping): The deduplicating link will define + what happens if many FROMs share a TO. + (ctf_link_add_cu_mapping): Create in_cu_mapping and + out_cu_mapping. Do not create ctf_link_outputs here any more, or + create per-CU dicts here: they are already created when needed. + (ctf_link_one_variable): Log a debug message if we skip a + variable due to its type being concealed in a CU-mapped link. + (This is probably too common a case to make into a warning.) + (ctf_link): Create empty per-CU dicts if requested. + +2020-07-22 Nick Alcock + + * ctf-link.c (ctf_link_write): Close the fd. + +2020-07-22 Nick Alcock + + * Makefile.am: Set -DNOBFD=1 in libctf-nobfd, and =0 elsewhere. + * Makefile.in: Regenerated. + * ctf-impl.h (ctf_link_input_name): New. + (ctf_file_t) : New. + * ctf-create.c (ctf_serialize): Adjust accordingly. + * ctf-link.c: Define ctf_open as weak when PIC. + (ctf_arc_close_thunk): Remove unnecessary thunk. + (ctf_file_close_thunk): Likewise. + (ctf_link_input_name): New. + (ctf_link_input_t): New value of the ctf_file_t.ctf_link_input. + (ctf_link_input_close): Adjust accordingly. + (ctf_link_add_ctf_internal): New, split from... + (ctf_link_add_ctf): ... here. Return error if lazy loading of + CTF is not possible. Change to just call... + (ctf_link_add): ... this new function. + (ctf_link_add_cu_mapping): Transition to ctf_err_warn. Drop the + ctf_file_close_thunk. + (ctf_link_in_member_cb_arg_t) Rename to... + : ... this. + : Drop. + : Likewise (migrated to ctf_link_flags). + : Rename to... + : ... this. + : Rename to... + : ... this. + : New. + (ctf_link_one_type): Adjuwt accordingly. Transition to + ctf_err_warn, removing a TODO. + (ctf_link_one_variable): Note a case too common to warn about. + Report in the debug stream if a cu-mapped link prevents addition + of a conflicting variable. + (ctf_link_one_input_archive_member): Adjust. + (ctf_link_lazy_open): New, open a CTF archive for linking when + needed. + (ctf_link_close_one_input_archive): New, close it again. + (ctf_link_one_input_archive): Adjust for lazy opening, member + renames, and ctf_err_warn transition. Move the + empty_link_type_mapping call to... + (ctf_link): ... here. Adjut for renamings and thunk removal. + Don't spuriously fail if some input contains no CTF data. + (ctf_link_write): ctf_err_warn transition. + * libctf.ver: Remove not-yet-stable comment. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_strerror): Delete. + * ctf-subr.c (ctf_strerror): Likewise. + * ctf-error.c (ctf_errmsg): Stop using ctf_strerror: just use + strerror directly. + +2020-07-22 Nick Alcock + + * ctf-impl.c (ctf_file_t) : New. + (ctf_import_unref): New. + * ctf-open.c (ctf_file_close) Drop the refcount all the way to + zero. Don't recurse back in if the refcount is already zero. + (ctf_import): Check ctf_parent_unreffed before deciding whether + to close a pre-existing parent. Set it to zero. + (ctf_import_unreffed): New, as above, setting + ctf_parent_unreffed to 1. + * ctf-create.c (ctf_serialize): Do not ctf_import into the new + child: use direct assignment, and set unreffed on the new and + old children. + * ctf-link.c (ctf_create_per_cu): Import the parent using + ctf_import_unreffed. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_link_type_mapping_key): Rename to... + (ctf_link_type_key): ... this, adjusting member prefixes to + match. + (ctf_hash_type_mapping_key): Rename to... + (ctf_hash_type_key): ... this. + (ctf_hash_eq_type_mapping_key): Rename to... + (ctf_hash_eq_type_key): ... this. + * ctf-hash.c (ctf_hash_type_mapping_key): Rename to... + (ctf_hash_type_key): ... this, and adjust for member name + changes. + (ctf_hash_eq_type_mapping_key): Rename to... + (ctf_hash_eq_type_key): ... this, and adjust for member name + changes. + * ctf-link.c (ctf_add_type_mapping): Adjust. Note the lack of + need for out-of-memory checking in this code. + (ctf_type_mapping): Adjust. + +2020-07-22 Nick Alcock + + configure.ac: Check for vasprintf. + configure: Regenerated. + config.h.in: Likewise. + +2020-07-22 Nick Alcock + + * ctf-archive.c (ctf_arc_bufopen): Fix message. + +2020-07-22 Nick Alcock + + * ctf-impl.h (struct ctf_archive_internal) + New. + * ctf-open-bfd.c (ctf_bfdopen_ctfsect): Explicitly open a strtab + if the input has no symtab, rather than dividing by + zero. Arrange to free it later via ctfi_free_ctfsect. + * ctf-archive.c (ctf_new_archive_internal): Do not + ctfi_free_strsect by default. + (ctf_arc_close): Possibly free it here. + +2020-07-22 Nick Alcock + + * ctf-dump.c (ctf_is_slice): Delete, unnecessary. + (ctf_dump_format_type): improve slice formatting. Always print + the type size, even of slices. + (ctf_dump_member): Print slices (-> bitfields) differently from + non-slices. Failure to format a type is not an OOM. + +2020-07-22 Nick Alcock + + * ctf-dump.c (ctf_dump_format_type): Emit a warning. + (ctf_dump_label): Swallow errors from ctf_dump_format_type. + (ctf_dump_objts): Likewise. + (ctf_dump_var): Likewise. + (ctf_dump_type): Do not emit a duplicate message. Move to + ctf_err_warning, and swallow all errors. + +2020-07-22 Nick Alcock + + * ctf-decl.c (ctf_decl_fini): Free the cd_buf. + (ctf_decl_buf): Once it escapes, don't try to free it later. + +2020-07-22 Nick Alcock + + * ctf-types.c (ctf_type_aname): Print arg types here... + * ctf-dump.c (ctf_dump_funcs): ... not here: but do substitute + in the type name here. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_assert): New. + (ctf_err_warning_t): Likewise. + (ctf_file_t) : Likewise. + (ctf_err_warn): New prototype. + (ctf_assert_fail_internal): Likewise. + * ctf-inlines.h (ctf_assert_internal): Likewise. + * ctf-open.c (ctf_file_close): Free ctf_errs_warnings. + * ctf-create.c (ctf_serialize): Copy it on serialization. + * ctf-subr.c (ctf_err_warn): New, add an error/warning. + (ctf_errwarning_next): New iterator, free and pass back + errors/warnings in succession. + * libctf.ver (ctf_errwarning_next): Add. + +2020-07-22 Egeyar Bagcioglu + + * ctf-types.c (ctf_variable_iter): Fix error return. + +2020-07-22 Nick Alcock + + * ctf-open.c (ctf_bufopen_internal): Diagnose invalid flags. + +2020-07-22 Nick Alcock + + ctf-decls.h (ctf_qsort_compar_thunk): Fix arg passing. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_next_hkv_t): New, kv-pairs passed to + sorting functions. + (ctf_next_t) : New, sorted kv-pairs for + ctf_dynhash_next_sorted. + : New, pointer to the dynhash under iteration. + : New, pointer to the dynset under iteration. + (ctf_hash_sort_f): Sorting function passed to... + (ctf_dynhash_next_sorted): ... this new function. + (ctf_dynhash_next): New. + (ctf_dynset_next): New. + * ctf-inlines.h (ctf_dynhash_cnext_sorted): New. + (ctf_dynhash_cnext): New. + (ctf_dynset_cnext): New. + * ctf-hash.c (ctf_dynhash_next_sorted): New. + (ctf_dynhash_next): New. + (ctf_dynset_next): New. + * ctf-util.c (ctf_next_destroy): Free the u.ctn_sorted_hkv if + needed. + (ctf_next_copy): Alloc-and-copy the u.ctn_sorted_hkv if needed. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_next): New. + (ctf_get_dict): New prototype. + * ctf-lookup.c (ctf_get_dict): New, split out of... + (ctf_lookup_by_id): ... here. + * ctf-util.c (ctf_next_create): New. + (ctf_next_destroy): New. + (ctf_next_copy): New. + * ctf-types.c (includes): Add . + (ctf_member_next): New. + (ctf_enum_next): New. + (ctf_type_iter): Document the lack of iteration over parent + types. + (ctf_type_next): New. + (ctf_variable_next): New. + * ctf-archive.c (ctf_archive_next): New. + * libctf.ver: Add new public functions. + +2020-07-22 Nick Alcock + + * libctf.ver (ctf_ref): New. + * ctf-open.c (ctf_ref): Implement it. + +2020-07-22 Nick Alcock + + * ctf-inlines.h (ctf_forwardable_kind): New. + * ctf-create.c (ctf_add_forward): Use it. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_get_ctt_size): Move definition from here... + * ctf-inlines.h (ctf_get_ctt_size): ... to here. + +2020-07-22 Nick Alcock + + * ctf-hash.c (ctf_dynset_eq_string): New. + (ctf_dynset_create): New. + (DYNSET_EMPTY_ENTRY_REPLACEMENT): New. + (DYNSET_DELETED_ENTRY_REPLACEMENT): New. + (key_to_internal): New. + (internal_to_key): New. + (ctf_dynset_insert): New. + (ctf_dynset_remove): New. + (ctf_dynset_destroy): New. + (ctf_dynset_lookup): New. + (ctf_dynset_exists): New. + (ctf_dynset_lookup_any): New. + (ctf_hash_insert_type): Coding style. + (ctf_hash_define_type): Likewise. + * ctf-impl.h (ctf_dynset_t): New. + (ctf_dynset_eq_string): New. + (ctf_dynset_create): New. + (ctf_dynset_insert): New. + (ctf_dynset_remove): New. + (ctf_dynset_destroy): New. + (ctf_dynset_lookup): New. + (ctf_dynset_exists): New. + (ctf_dynset_lookup_any): New. + * ctf-inlines.h (ctf_dynset_cinsert): New. + +2020-07-22 Nick Alcock + + * ctf-hash.c (ctf_helem_t) : Remove. + : Likewise. + : New. + (ctf_dynhash_item_free): Indirect through the owner. + (ctf_dynhash_create): Only pass in ctf_dynhash_item_free and + allocate space for the key_free and value_free fields fields + if necessary. + (ctf_hashtab_insert): Likewise. Fix OOM errno value. + (ctf_dynhash_insert): Only access ctf_hashtab's key_free and + value_free if they will exist. Set the slot's owner, but only + if it exists. + (ctf_dynhash_remove): Adjust. + +2020-07-22 Nick Alcock + + * ctf-hash.c (ctf_hashtab_insert): Free the key passed in if + there is a key-freeing function and the key already exists. + +2020-07-22 Nick Alcock + + * ctf-inlines.h: New file. + * ctf-impl.h: Include it. + (ctf_hash_iter_find_f): New typedef. + (ctf_dynhash_elements): New. + (ctf_dynhash_lookup_kv): New. + (ctf_dynhash_iter_find): New. + * ctf-hash.c (ctf_dynhash_lookup_kv): New. + (ctf_traverse_find_cb_arg_t): New. + (ctf_hashtab_traverse_find): New. + (ctf_dynhash_iter_find): New. + (ctf_dynhash_elements): New. + +2020-07-22 Nick Alcock + + * ctf-impl.h [!__GNUC__] (__extension__): Define to nothing. + +2020-07-22 Nick Alcock + + * ctf-archive.c (ctf_archive_count): New. + * libctf.ver: New public function. + +2020-07-22 Nick Alcock + + * ctf-types.c (ctf_member_count): New. + * libctf.ver: New public function. + +2020-07-22 Nick Alcock + + * ctf-types.c (ctf_type_kind_forwarded): New. + +2020-07-22 Nick Alcock + + * ctf-types.c (ctf_type_name_raw): New. + (ctf_type_aname_raw): Reimplement accordingly. + +2020-07-22 Nick Alcock + + * ctf-subr.c (ctf_dprintf): _libctf_debug is unlikely to be set. + +2020-07-22 Nick Alcock + + * ctf-impl.h (struct ctf_archive_internal) + : New. + (ctf_new_archive_internal): Adjust. + * ctf-archive.c (ctf_new_archive_internal): Likewise. + Initialize ctfi_unmap_on_close. Adjust error path. + (ctf_arc_bufopen): Adjust ctf_new_archive_internal call + (unmap_on_close is 0). + (ctf_arc_close): Only unmap if ctfi_unmap_on_close. + * ctf-open-bfd.c (ctf_fdopen): Adjust. + +2020-07-22 Nick Alcock + + * ctf-types.c (ctf_type_aname): Return ECTF_CORRUPT if + ints, floats or typedefs have no name. Fix comment typo. + +2020-07-22 Nick Alcock + + * ctf-create.c (ctf_add_slice): Support slices of any kind that + resolves to an integral type. + * ctf-types.c (ctf_type_encoding): Resolve the type before + fishing its encoding out. + +2020-07-22 Nick Alcock + + * ctf-create.c (ctf_create): Mark dirty. + +2020-07-22 Nick Alcock + + * ctf-create.c (membcmp) Skip nameless members. + +2020-07-22 Nick Alcock + + * ctf-create.c (ctf_add_member_offset): Support names of "" + as if they were the null pointer. + +2020-07-22 Nick Alcock + + * ctf-open.c (init_types): Remove typeless CTF_K_FORWARD + special-casing. + +2020-07-22 Nick Alcock + + * ctf-types.c (ctf_type_reference): Add support for dynamic slices. + +2020-07-22 Nick Alcock + + * ctf-create.c (ctf_serialize): Add cast. + (ctf_add_slice): Likewise. + +2020-07-22 Nick Alcock + + * ctf-impl.h (ctf_dtdef_t) : Fix type. + * ctf-create.c (ctf_add_function): Check for unimplemented type + and populate at the same time. Populate one-by-one, not via + memcpy. + (ctf_serialize): Remove unnecessary cast. + * ctf-types.c (ctf_func_type_info): Likewise. + (ctf_func_type_args): Likewise. Fix comment typo. + +2020-07-22 Nick Alcock + + * ctf-create.c (ctf_add_reftype): Support refs to type zero. + (ctf_add_array): Support array contents of type zero. + (ctf_add_function): Support arguments and return types of + type zero. + (ctf_add_typedef): Support typedefs to type zero. + (ctf_add_member_offset): Support members of type zero, + unless added at unspecified (naturally-aligned) offset. + +2020-07-22 Nick Alcock + + * ctf-error.c: Include , for offsetof. + (_ctf_errlist): Migrate to... + (_ctf_errlist_t): ... this. + (_ctf_erridx): New, indexes into _ctf_errlist_t. + (_ctf_nerr): Remove. + (ctf_errmsg): Adjust accordingly. + * Makefile.am (BUILT_SOURCES): Note... + (ctf-error.h): ... this new rule. + * Makefile.in: Regenerate. + * mkerrors.sed: New, process ctf-api.h to generate ctf-error.h. + * .gitignore: New, ignore ctf-error.h. + +2020-07-22 Nick Alcock + + * ctf-impl.h: Fix typos in comments. + +2020-07-22 Nick Clifton + + * ctf-archive.c (ctf_arc_write): Avoid calling close twice on the + same file descriptor. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-06-26 Nick Alcock + + * aclocal.m4: Add config/gettext-sister.m4: Shuffle into + alphabetical order. + * configure.ac: Add ZW_GNU_GETTEXT_SISTER_DIR. + * config.h.in: Regenerated. + * Makefile.in: Likewise. + * configure: Likewise. + +2020-06-26 Nick Alcock + + * ctf-create.c: Include . + * ctf-open-bfd.c: Likewise. + +2020-06-26 Nick Alcock + + PR libctf/25120 + * configure.ac: Check for bswap_16, bswap_32, and bswap_64 decls. + * swap.h (bswap_16): Do not assume that presence of + means this is declared. + (bswap_32): Likewise. + (bswap_64): Likewise. + (bswap_identity_64): Remove, unused. + * configure: Regenerated. + * config.h.in: Likewise. + +2020-06-26 Nick Alcock + + PR libctf/25120 + * ctf-impl.h (_libctf_printflike_): Add non-GNU-C fallback. + (_libctf_unlikely_): Likewise. + (_libctf_unused): Likewise. + (_libctf_malloc_): Likewise. + +2020-06-26 Nick Alcock + + PR libctf/25120 + * ctf-archive.c (search_nametbl): No longer global: declare... + (ctf_arc_open_by_name_internal): ... here. Use bsearch_r. + (search_modent_by_name): Take and use ARG for the nametbl. + +2020-06-26 Nick Alcock + + * ctf-impl.h (ctf_new_archive_internal): Declare. + (ctf_arc_bufopen): Remove. + (ctf_archive_internal) : New. + * ctf-archive.c (ctf_arc_close): Use it. + (ctf_arc_bufopen): Fuse into... + (ctf_new_archive_internal): ... this, moved across from... + * ctf-open-bfd.c: ... here. + (ctf_bfdopen_ctfsect): Use ctf_arc_bufopen. + * libctf.ver: Add it. + +2020-06-26 Nick Alcock + + * ctf-create.c (ctf_add_forward): Intern in the right namespace. + (ctf_dtd_delete): Remove correspondingly. + (ctf_rollback): Likewise. + +2020-06-26 Nick Alcock + + * ctf-create.c (ctf_add_type_internal): Hand back existing types + unchanged. + +2020-06-26 Nick Alcock + + * ctf-create.c (ctf_add_forward): Don't add forwards to + types that already exist. + +2020-06-26 Nick Alcock + + * ctf-open.c (init_types): Only intern root-visible types. + * ctf-create.c (ctf_dtd_insert): Likewise. + (ctf_dtd_delete): Only remove root-visible types. + (ctf_rollback): Likewise. + (ctf_add_generic): Adjust. + (ctf_add_struct_sized): Adjust comment. + (ctf_add_union_sized): Likewise. + (ctf_add_enum): Likewise. + * ctf-impl.h (ctf_dtd_insert): Adjust prototype. + +2020-03-11 John Baldwin + + * swap.h (bswap_identity_64): Make static. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-05 Joel Brobecker + + PR binutils/25155: + * configure.ac: Add AC_CHECK_DECLS([asprintf]). + * configure, config.h.in: Regenerate. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2019-10-16 Simon Marchi + + * swap.h (bswap_16, bswap_32, bswap_64): Make static. + +2019-09-30 Nick Alcock + + * ctf-open.c (ctf_bufopen_internal): Fix tabdamage. + * ctf-types.c (ctf_type_lname): Likewise. + +2019-09-23 Nick Alcock + + * ctf-open.c (ctf_import): Do not leak a ctf_file_t ref on every + ctf_import after the first for a given file. + +2019-09-23 Nick Alcock + + * ctf-impl.h (ctf_str_append_noerr): Declare. + * ctf-util.c (ctf_str_append_noerr): Define in terms of + ctf_str_append. + * ctf-dump.c (str_append): New, call it. + (ctf_dump_format_type): Use str_append, not ctf_str_append. + (ctf_dump_label): Likewise. + (ctf_dump_objts): Likewise. + (ctf_dump_funcs): Likewise. + (ctf_dump_var): Likewise. + (ctf_dump_member): Likewise. + (ctf_dump_type): Likewise. + (ctf_dump): Likewise. + +2019-09-23 Nick Alcock + + * ctf-impl.h (ctf_alloc): Remove. + (ctf_free): Likewise. + (ctf_strdup): Likewise. + * ctf-subr.c (ctf_alloc): Remove. + (ctf_free): Likewise. + * ctf-util.c (ctf_strdup): Remove. + + * ctf-create.c (ctf_serialize): Use malloc, not ctf_alloc; free, not + ctf_free; strdup, not ctf_strdup. + (ctf_dtd_delete): Likewise. + (ctf_dvd_delete): Likewise. + (ctf_add_generic): Likewise. + (ctf_add_function): Likewise. + (ctf_add_enumerator): Likewise. + (ctf_add_member_offset): Likewise. + (ctf_add_variable): Likewise. + (membadd): Likewise. + (ctf_compress_write): Likewise. + (ctf_write_mem): Likewise. + * ctf-decl.c (ctf_decl_push): Likewise. + (ctf_decl_fini): Likewise. + (ctf_decl_sprintf): Likewise. Check for OOM. + * ctf-dump.c (ctf_dump_append): Use malloc, not ctf_alloc; free, not + ctf_free; strdup, not ctf_strdup. + (ctf_dump_free): Likewise. + (ctf_dump): Likewise. + * ctf-open.c (upgrade_types_v1): Likewise. + (init_types): Likewise. + (ctf_file_close): Likewise. + (ctf_bufopen_internal): Likewise. Check for OOM. + (ctf_parent_name_set): Likewise: report the OOM to the caller. + (ctf_cuname_set): Likewise. + (ctf_import): Likewise. + * ctf-string.c (ctf_str_purge_atom_refs): Use malloc, not ctf_alloc; + free, not ctf_free; strdup, not ctf_strdup. + (ctf_str_free_atom): Likewise. + (ctf_str_create_atoms): Likewise. + (ctf_str_add_ref_internal): Likewise. + (ctf_str_remove_ref): Likewise. + (ctf_str_write_strtab): Likewise. + +2019-08-09 Nick Alcock + + * ctf-types.c (ctf_type_encoding): Fix the dynamic case to + work right for non-int/fps. + +2019-08-08 Nick Alcock + + * ctf-types.c (ctf_type_name): Don't strlen a potentially- + null pointer. + +2019-08-07 Nick Alcock + + * ctf-impl.h (ctf_file_t) : New. + * ctf-open.c (ctf_file_close): Free it. + * ctf-create.c (ctf_serialize): Adjust. + (membcmp): When reporting a conflict due to an error, report the + error. + (ctf_add_type): Turn into a ctf_add_processing wrapper. Rename to... + (ctf_add_type_internal): ... this. Hand back types we are already + in the middle of adding immediately. Hand back structs/unions with + the same number of members immediately. Do not walk the dynamic + list. Call ctf_add_type_internal, not ctf_add_type. Handle + forwards promoted to other types and the inverse case identically. + Add structs to the mapping as soon as we intern them, before they + gain any members. + +2019-08-09 Nick Alcock + + * ctf-impl.h (ctf_names_t): New. + (ctf_lookup_t) : Now a ctf_names_t, not a ctf_hash_t. + (ctf_file_t) : Likewise. + : Likewise. + : Likewise. + : Likewise. + : Improve comment. + : New. + : New. + : New. + : Remove, redundant to the names hashes. + : Remove, redundant to ctf_typemax. + (ctf_dtdef_t) : Remove. + : Note that the ctt_name is now populated. + (ctf_str_atom_t) : This is now the strtab + offset for internal strings too. + : New, the external strtab offset. + (CTF_INDEX_TO_TYPEPTR): Handle the LCTF_RDWR case. + (ctf_name_table): New declaration. + (ctf_lookup_by_rawname): Likewise. + (ctf_lookup_by_rawhash): Likewise. + (ctf_set_ctl_hashes): Likewise. + (ctf_serialize): Likewise. + (ctf_dtd_insert): Adjust. + (ctf_simple_open_internal): Likewise. + (ctf_bufopen_internal): Likewise. + (ctf_list_empty_p): Likewise. + (ctf_str_remove_ref): Likewise. + (ctf_str_add): Returns uint32_t now. + (ctf_str_add_ref): Likewise. + (ctf_str_add_external): Now returns a boolean (int). + * ctf-string.c (ctf_strraw_explicit): Check the ctf_prov_strtab + for strings in the appropriate range. + (ctf_str_create_atoms): Create the ctf_prov_strtab. Detect OOM + when adding the null string to the new strtab. + (ctf_str_free_atoms): Destroy the ctf_prov_strtab. + (ctf_str_add_ref_internal): Add make_provisional argument. If + make_provisional, populate the offset and fill in the + ctf_prov_strtab accordingly. + (ctf_str_add): Return the offset, not the string. + (ctf_str_add_ref): Likewise. + (ctf_str_add_external): Return a success integer. + (ctf_str_remove_ref): New, remove a single ref. + (ctf_str_count_strtab): Do not count the initial null string's + length or the existence or length of any unreferenced internal + atoms. + (ctf_str_populate_sorttab): Skip atoms with no refs. + (ctf_str_write_strtab): Populate the nullstr earlier. Add one + to the cts_len for the null string, since it is no longer done + in ctf_str_count_strtab. Adjust for csa_external_offset rename. + Populate the csa_offset for both internal and external cases. + Flush the ctf_prov_strtab afterwards, and reset the + ctf_str_prov_offset. + * ctf-create.c (ctf_grow_ptrtab): New. + (ctf_create): Call it. Initialize new fields rather than old + ones. Tell ctf_bufopen_internal that this is a writable dictionary. + Set the ctl hashes and data model. + (ctf_update): Rename to... + (ctf_serialize): ... this. Leave a compatibility function behind. + Tell ctf_simple_open_internal that this is a writable dictionary. + Pass the new fields along from the old dictionary. Drop + ctf_dtnextid and ctf_dtbyname. Use ctf_strraw, not dtd_name. + Do not zero out the DTD's ctt_name. + (ctf_prefixed_name): Rename to... + (ctf_name_table): ... this. No longer return a prefixed name: return + the applicable name table instead. + (ctf_dtd_insert): Use it, and use the right name table. Pass in the + kind we're adding. Migrate away from dtd_name. + (ctf_dtd_delete): Adjust similarly. Remove the ref to the + deleted ctt_name. + (ctf_dtd_lookup_type_by_name): Remove. + (ctf_dynamic_type): Always return NULL on read-only dictionaries. + No longer check ctf_dtnextid: check ctf_typemax instead. + (ctf_snapshot): No longer use ctf_dtnextid: use ctf_typemax instead. + (ctf_rollback): Likewise. No longer fail with ECTF_OVERROLLBACK. Use + ctf_name_table and the right name table, and migrate away from + dtd_name as in ctf_dtd_delete. + (ctf_add_generic): Pass in the kind explicitly and pass it to + ctf_dtd_insert. Use ctf_typemax, not ctf_dtnextid. Migrate away + from dtd_name to using ctf_str_add_ref to populate the ctt_name. + Grow the ptrtab if needed. + (ctf_add_encoded): Pass in the kind. + (ctf_add_slice): Likewise. + (ctf_add_array): Likewise. + (ctf_add_function): Likewise. + (ctf_add_typedef): Likewise. + (ctf_add_reftype): Likewise. Initialize the ctf_ptrtab, checking + ctt_name rather than dtd_name. + (ctf_add_struct_sized): Pass in the kind. Use + ctf_lookup_by_rawname, not ctf_hash_lookup_type / + ctf_dtd_lookup_type_by_name. + (ctf_add_union_sized): Likewise. + (ctf_add_enum): Likewise. + (ctf_add_enum_encoded): Likewise. + (ctf_add_forward): Likewise. + (ctf_add_type): Likewise. + (ctf_compress_write): Call ctf_serialize: adjust for ctf_size not + being initialized until after the call. + (ctf_write_mem): Likewise. + (ctf_write): Likewise. + * ctf-archive.c (arc_write_one_ctf): Likewise. + * ctf-lookup.c (ctf_lookup_by_name): Use ctf_lookuup_by_rawhash, not + ctf_hash_lookup_type. + (ctf_lookup_by_id): No longer check the readonly types if the + dictionary is writable. + * ctf-open.c (init_types): Assert that this dictionary is not + writable. Adjust to use the new name hashes, ctf_name_table, + and ctf_ptrtab_len. GNU style fix for the final ptrtab scan. + (ctf_bufopen_internal): New 'writable' parameter. Flip on LCTF_RDWR + if set. Drop out early when dictionary is writable. Split the + ctf_lookups initialization into... + (ctf_set_cth_hashes): ... this new function. + (ctf_simple_open_internal): Adjust. New 'writable' parameter. + (ctf_simple_open): Adjust accordingly. + (ctf_bufopen): Likewise. + (ctf_file_close): Destroy the appropriate name hashes. No longer + destroy ctf_dtbyname, which is gone. + (ctf_getdatasect): Remove spurious "extern". + * ctf-types.c (ctf_lookup_by_rawname): New, look up types in the + specified name table, given a kind. + (ctf_lookup_by_rawhash): Likewise, given a ctf_names_t *. + (ctf_member_iter): Add support for iterating over the + dynamic type list. + (ctf_enum_iter): Likewise. + (ctf_variable_iter): Likewise. + (ctf_type_rvisit): Likewise. + (ctf_member_info): Add support for types in the dynamic type list. + (ctf_enum_name): Likewise. + (ctf_enum_value): Likewise. + (ctf_func_type_info): Likewise. + (ctf_func_type_args): Likewise. + * ctf-link.c (ctf_accumulate_archive_names): No longer call + ctf_update. + (ctf_link_write): Likewise. + (ctf_link_intern_extern_string): Adjust for new + ctf_str_add_external return value. + (ctf_link_add_strtab): Likewise. + * ctf-util.c (ctf_list_empty_p): New. + +2019-08-05 Nick Alcock + + * ctf-types.c (ctf_type_resolve): Return ECTF_NONREPRESENTABLE on + type zero. + * ctf-create.c (ctf_add_type): Detect and skip nonrepresentable + members and types. + (ctf_add_variable): Likewise for variables pointing to them. + * ctf-link.c (ctf_link_one_type): Do not warn for nonrepresentable + type link failure, but do warn for others. + * ctf-dump.c (ctf_dump_format_type): Likewise. Do not assume all + errors to be ENOMEM. + (ctf_dump_member): Likewise. + (ctf_dump_type): Likewise. + (ctf_dump_header_strfield): Do not assume all errors to be ENOMEM. + (ctf_dump_header_sectfield): Do not assume all errors to be ENOMEM. + (ctf_dump_header): Likewise. + (ctf_dump_label): likewise. + (ctf_dump_objts): likewise. + (ctf_dump_funcs): likewise. + (ctf_dump_var): likewise. + (ctf_dump_str): Likewise. + +2019-09-30 Nick Alcock + + * configure.ac (AC_DISABLE_SHARED): New, like opcodes/. + (LT_INIT): Likewise. + (AM_INSTALL_LIBBFD): Likewise. + (dlopen): Note why this is necessary in a comment. + (SHARED_LIBADD): Initialize for possibly-PIC libiberty: derived from + opcodes/. + (SHARED_LDFLAGS): Likewise. + (BFD_LIBADD): Likewise, for libbfd. + (BFD_DEPENDENCIES): Likewise. + (VERSION_FLAGS): Initialize, using a version script if ld supports + one, or libtool -export-symbols-regex otherwise. + (AC_CONFIG_MACRO_DIR): Add ../BFD. + * Makefile.am (ACLOCAL_AMFLAGS): Likewise. + (INCDIR): New. + (AM_CPPFLAGS): Use $(srcdir), not $(top_srcdir). + (noinst_LIBRARIES): Replace with... + [INSTALL_LIBBFD] (lib_LTLIBRARIES): This, or... + [!INSTALL_LIBBFD] (noinst_LTLIBRARIES): ... this, mentioning new + libctf-nobfd.la as well. + [INSTALL_LIBCTF] (include_HEADERS): Add the CTF headers. + [!INSTALL_LIBCTF] (include_HEADERS): New, empty. + (libctf_a_SOURCES): Rename to... + (libctf_nobfd_la_SOURCES): ... this, all of libctf other than + ctf-open-bfd.c. + (libctf_la_SOURCES): Now derived from libctf_nobfd_la_SOURCES, + with ctf-open-bfd.c added. + (libctf_nobfd_la_LIBADD): New, using @SHARED_LIBADD@. + (libctf_la_LIBADD): New, using @BFD_LIBADD@ as well. + (libctf_la_DEPENDENCIES): New, using @BFD_DEPENDENCIES@. + * Makefile.am [INSTALL_LIBCTF]: Use it. + * aclocal.m4: Add ../bfd/acinclude.m4, ../config/acx.m4, and the + libtool macros. + * libctf.ver: New, everything is version LIBCTF_1.0 currently (even + the unstable components). + * Makefile.in: Regenerated. + * config.h.in: Likewise. + * configure: Likewise. + +2019-07-30 Nick Alcock + + * configure.ac (INSTALL_LIBCTF): New, controlled by + --enable-install-libctf. + [INSTALL_LIBCTF] (lib_LIBRARIES): Add libctf.a. + * Makefile.in: Regenerated. + * configure: Regenerated. + +2019-07-30 Nick Alcock + + * ctf-archive.c (ctf_arc_close): Call ctfi_bfd_close if set. + * ctf-open-bfd.c (ctf_bfdclose): Fix comment. + +2019-07-30 Nick Alcock + + * ctf-open-bfd.c (ctf_fdopen): Call bfd_set_cacheable. + +2019-07-13 Nick Alcock + + * ctf-impl.h (includes): Include here. + +2019-07-30 Nick Alcock + + * ctf-open.c (flip_lbls): Eschew for-loop initial declarations. + (flip_objts): Likewise. + (flip_vars): Likewise. + (flip_types): Likewise. + +2019-07-30 Nick Alcock + + * ctf-hash.c (ctf_hashtab_insert): Pass in the key and value + freeing functions: if set, free the key and value if the slot + already exists. Always reassign the key. + (ctf_dynhash_insert): Adjust call appropriately. + (ctf_hash_insert_type): Likewise. + +2019-08-03 Nick Alcock + + * ctf-create.c (ctf_add_type): Look up and use the forwarded-to + type kind. Allow forwards to unify with pre-existing structs/ + unions/enums. + +2019-07-30 Nick Alcock + + * ctf-impl.h (ctf_file_t) : New. + : Likewise. + : Likewise. + * ctf-create.c (ctf_update): Update accordingly. + * ctf-open.c (ctf_file_close): Likewise. + * ctf-link.c (ctf_create_per_cu): Apply the cu mapping. + (ctf_link_add_cu_mapping): New. + (ctf_link_set_memb_name_changer): Likewise. + (ctf_change_parent_name): New. + (ctf_name_list_accum_cb_arg_t) : New, storage for names + allocated by the caller's ctf_link_memb_name_changer. + : Likewise. + (ctf_accumulate_archive_names): Call the ctf_link_memb_name_changer. + (ctf_link_write): Likewise (for _CTF_SECTION only): also call + ctf_change_parent_name. Free any resulting names. + +2019-07-13 Nick Alcock + + * ctf-link.c (ctf_create_per_cu): New, refactored out of... + (ctf_link_one_type): ... here, with parent-name setting added. + (check_variable): New. + (ctf_link_one_variable): Likewise. + (ctf_link_one_input_archive_member): Call it. + * ctf-error.c (_ctf_errlist): Updated with new errors. + +2019-07-13 Nick Alcock + + * ctf-impl.h (ctf_file_t): New field ctf_link_type_mapping. + (struct ctf_link_type_mapping_key): New. + (ctf_hash_type_mapping_key): Likewise. + (ctf_hash_eq_type_mapping_key): Likewise. + (ctf_add_type_mapping): Likewise. + (ctf_type_mapping): Likewise. + (ctf_dynhash_empty): Likewise. + * ctf-open.c (ctf_file_close): Update accordingly. + * ctf-create.c (ctf_update): Likewise. + (ctf_add_type): Populate the mapping. + * ctf-hash.c (ctf_hash_type_mapping_key): Hash a type mapping key. + (ctf_hash_eq_type_mapping_key): Check the key for equality. + (ctf_dynhash_insert): Fix comment typo. + (ctf_dynhash_empty): New. + * ctf-link.c (ctf_add_type_mapping): New. + (ctf_type_mapping): Likewise. + (empty_link_type_mapping): New. + (ctf_link_one_input_archive): Call it. + +2019-07-13 Nick Alcock + + * ctf-link.c: New file, linking of the string and type sections. + * Makefile.am (libctf_a_SOURCES): Add it. + * Makefile.in: Regenerate. + + * ctf-impl.h (ctf_file_t): New fields ctf_link_inputs, + ctf_link_outputs. + * ctf-create.c (ctf_update): Update accordingly. + * ctf-open.c (ctf_file_close): Likewise. + * ctf-error.c (_ctf_errlist): Updated with new errors. + +2019-07-13 Nick Alcock + + * ctf-dump.c (ctf_dump_funcs): Check the right error value. + +2019-07-13 Nick Alcock + + * ctf-dump.c (ctf_dump): Use ctf_type_iter_all to dump types, not + ctf_type_iter. + (ctf_dump_type): Pass down the flag from ctf_type_iter_all. + (ctf_dump_format_type): Add non-root-type { } notation. + Add root flag to prototype. + (ctf_dump_label): Adjust accordingly. + (ctf_dump_objts): Likewise. + (ctf_dump_var): Likewise. + +2019-07-13 Nick Alcock + + * ctf-create.c (ctf_compress_write): Fix double-free. + +2019-07-13 Nick Alcock + + * ctf-archive.c (ctf_arc_write): Split off, and reimplement in terms + of... + (ctf_arc_write_fd): ... this new function. + * ctf-create.c (ctf_write_mem): New. + +2019-07-13 Nick Alcock + + * ctf-impl.h (ctf_str_atom_t) : New field. + (ctf_file_t) : Likewise. + (ctf_str_add_ref): Name the last arg. + (ctf_str_add_external) New. + (ctf_str_add_strraw_explicit): Likewise. + (ctf_simple_open_internal): Likewise. + (ctf_bufopen_internal): Likewise. + + * ctf-string.c (ctf_strraw_explicit): Split from... + (ctf_strraw): ... here, with new support for ctf_syn_ext_strtab. + (ctf_str_add_ref_internal): Return the atom, not the + string. + (ctf_str_add): Adjust accordingly. + (ctf_str_add_ref): Likewise. Move up in the file. + (ctf_str_add_external): New: update the csa_offset. + (ctf_str_count_strtab): Only account for strings with no csa_offset + in the internal strtab length. + (ctf_str_write_strtab): If the csa_offset is set, update the + string's refs without writing the string out, and update the + ctf_syn_ext_strtab. Make OOM handling less ugly. + * ctf-create.c (struct ctf_sort_var_arg_cb): New. + (ctf_update): Handle failure to populate the strtab. Pass in the + new ctf_sort_var arg. Adjust for ctf_syn_ext_strtab addition. + Call ctf_simple_open_internal, not ctf_simple_open. + (ctf_sort_var): Call ctf_strraw_explicit rather than looking up + strings by hand. + * ctf-hash.c (ctf_hash_insert_type): Likewise (but using + ctf_strraw). Adjust to diagnose ECTF_STRTAB nonetheless. + * ctf-open.c (init_types): No longer filter out ECTF_STRTAB. + (ctf_file_close): Destroy the ctf_syn_ext_strtab. + (ctf_simple_open): Rename to, and reimplement as a wrapper around... + (ctf_simple_open_internal): ... this new function, which calls + ctf_bufopen_internal. + (ctf_bufopen): Rename to, and reimplement as a wrapper around... + (ctf_bufopen_internal): ... this new function, which sets + ctf_syn_ext_strtab. + +2019-07-13 Nick Alcock + + * ctf_types.c (ctf_type_iter_all): New. + +2019-07-13 Nick Alcock + + * ctf-open.c (init_symtab): Check for overflow against the right + section. + (upgrade_header): Set cth_objtidxoff, cth_funcidxoff to zero-length. + (upgrade_types_v1): Note that these sections are not checked. + (flip_header): Endian-swap the header fields. + (flip_ctf): Endian-swap the sections. + (flip_objts): Update comment. + (ctf_bufopen): Check header offsets and alignment for validity. + +2019-07-13 Nick Alcock + + * ctf-open-bfd.c: Add . + (ctf_bfdopen_ctfsect): Open string and symbol tables using + techniques borrowed from bfd_elf_sym_name. + (ctf_new_archive_internal): Improve comment. + * ctf-archive.c (ctf_arc_close): Do not free the ctfi_strsect. + * ctf-open.c (ctf_bufopen): Allow opening with a string section but + no symbol section, but not vice versa. + +2019-07-08 Nick Alcock + + * ctf-impl.h (ctf_file_t): New field ctf_openflags. + * ctf-open.c (ctf_bufopen): Set it. No longer dump header offsets. + * ctf-dump.c (dump_header): New function, dump the CTF header. + (ctf_dump): Call it. + (ctf_dump_header_strfield): New function. + (ctf_dump_header_sectfield): Likewise. + +2019-07-06 Nick Alcock + + * ctf-impl.h (ctf_file_t): New fields ctf_header, ctf_dynbase, + ctf_cuname, ctf_dyncuname: ctf_base and ctf_buf are no longer const. + * ctf-open.c (ctf_set_base): Preserve the gap between ctf_buf and + ctf_base: do not assume that it is always sizeof (ctf_header_t). + Print out ctf_cuname: only print out ctf_parname if set. + (ctf_free_base): Removed, ctf_base is no longer freed: free + ctf_dynbase instead. + (ctf_set_version): Fix spacing. + (upgrade_header): New, in-place header upgrading. + (upgrade_types): Rename to... + (upgrade_types_v1): ... this. Free ctf_dynbase, not ctf_base. No + longer track old and new headers separately. No longer allow for + header sizes explicitly: squeeze the headers out on upgrade (they + are preserved in fp->ctf_header). Set ctf_dynbase, ctf_base and + ctf_buf explicitly. Use ctf_free, not ctf_free_base. + (upgrade_types): New, also handle ctf_parmax updating. + (flip_header): Flip ctf_cuname. + (flip_types): Flip BUF explicitly rather than deriving BUF from + BASE. + (ctf_bufopen): Store the header in fp->ctf_header. Correct minimum + required alignment of objtoff and funcoff. No longer store it in + the ctf_buf unless that buf is derived unmodified from the input. + Set ctf_dynbase where ctf_base is dynamically allocated. Drop locals + that duplicate fields in ctf_file: move allocation of ctf_file + further up instead. Call upgrade_header as needed. Move + version-specific ctf_parmax initialization into upgrade_types. More + concise error handling. + (ctf_file_close): No longer test for null pointers before freeing. + Free ctf_dyncuname, ctf_dynbase, and ctf_header. Do not call + ctf_free_base. + (ctf_cuname): New. + (ctf_cuname_set): New. + * ctf-create.c (ctf_update): Populate ctf_cuname. + (ctf_gzwrite): Write out the header explicitly. Remove obsolescent + comment. + (ctf_write): Likewise. + (ctf_compress_write): Get the header from ctf_header, not ctf_base. + Fix the compression length: fp->ctf_size never counted the CTF + header. Simplify the compress call accordingly. + +2019-07-11 Hans-Peter Nilsson + + * ctf-endian.h: Don't assume htole64 and le64toh are always + present if HAVE_ENDIAN_H; also check if htole64 is defined. + [!WORDS_BIGENDIAN] (htole64, le64toh): Define as identity, + not bswap_identity_64. + +2019-09-18 Alan Modra + + * ctf-open-bfd.c: Update throughout for bfd section macro changes. + +2019-09-09 Phil Blundell + + binutils 2.33 branch created. + +2019-07-18 Nick Alcock + + * ctf-types.c (ctf_type_aname_raw): New. + (ctf_func_type_info): Likewise. + (ctf_func_type_args): Likewise. + * ctf-error.c (_ctf_errlist): Fix description. + * ctf-lookup.c: Fix file description. + +2019-06-28 Nick Alcock + + * ctf-create.c (ctf_create): Fix off-by-one error. + +2019-06-28 Nick Alcock + + * ctf-impl.h: (struct ctf_strs_writable): New, non-const version of + struct ctf_strs. + (struct ctf_dtdef): Note that dtd_data.ctt_name is unpopulated. + (struct ctf_str_atom): New, disambiguated single string. + (struct ctf_str_atom_ref): New, points to some other location that + references this string's offset. + (struct ctf_file): New members ctf_str_atoms and ctf_str_num_refs. + Remove member ctf_dtvstrlen: we no longer track the total strlen + as we add strings. + (ctf_str_create_atoms): Declare new function in ctf-string.c. + (ctf_str_free_atoms): Likewise. + (ctf_str_add): Likewise. + (ctf_str_add_ref): Likewise. + (ctf_str_rollback): Likewise. + (ctf_str_purge_refs): Likewise. + (ctf_str_write_strtab): Likewise. + (ctf_realloc): Declare new function in ctf-util.c. + + * ctf-open.c (ctf_bufopen): Create the atoms table. + (ctf_file_close): Destroy it. + * ctf-create.c (ctf_update): Copy-and-free it on update. No longer + special-case the position of the parname string. Construct the + strtab by calling ctf_str_add_ref and ctf_str_write_strtab after the + rest of each buffer element is constructed, not via open-coding: + realloc the CTF buffer and append the strtab to it. No longer + maintain ctf_dtvstrlen. Sort the variable entry table later, after + strtab construction. + (ctf_copy_membnames): Remove: integrated into ctf_copy_{s,l,e}members. + (ctf_copy_smembers): Drop the string offset: call ctf_str_add_ref + after buffer element construction instead. + (ctf_copy_lmembers): Likewise. + (ctf_copy_emembers): Likewise. + (ctf_create): No longer maintain the ctf_dtvstrlen. + (ctf_dtd_delete): Likewise. + (ctf_dvd_delete): Likewise. + (ctf_add_generic): Likewise. + (ctf_add_enumerator): Likewise. + (ctf_add_member_offset): Likewise. + (ctf_add_variable): Likewise. + (membadd): Likewise. + * ctf-util.c (ctf_realloc): New, wrapper around realloc that aborts + if there are active ctf_str_num_refs. + (ctf_strraw): Move to ctf-string.c. + (ctf_strptr): Likewise. + * ctf-string.c: New file, strtab manipulation. + + * Makefile.am (libctf_a_SOURCES): Add it. + * Makefile.in: Regenerate. + +2019-06-28 Nick Alcock + + * ctf-impl.h (ctf_hash_iter_f): New. + (ctf_dynhash_iter): New declaration. + (ctf_dynhash_iter_remove): New declaration. + * ctf-hash.c (ctf_dynhash_iter): Define. + (ctf_dynhash_iter_remove): Likewise. + (ctf_hashtab_traverse): New. + (ctf_hashtab_traverse_remove): Likewise. + (struct ctf_traverse_cb_arg): Likewise. + (struct ctf_traverse_remove_cb_arg): Likewise. + +2019-06-28 Nick Alcock + + * ctf-hash.c (ctf_dynhash_remove): Call with a mocked-up element. + +2019-06-28 Nick Alcock + + * ctf-dump.c (ctf_dump_format_type): Prefix hex strings with 0x. + (ctf_dump_funcs): Likewise. + +2019-06-19 Nick Alcock + + * ctf-open-bfd.c: Add swap.h and ctf-endian.h. + (ctf_fdopen): Check for endian-swapped raw CTF magic, and + little-endian CTF archive magic. Do not check the CTF version: + ctf_simple_open does that in endian-safe ways. Do not dereference + null pointers on open failure. + +2019-06-19 Nick Alcock + + * ctf-open.c (get_vbytes_common): Return the new slice size. + (ctf_bufopen): Flip the endianness of the CTF-section header copy. + Remember to copy in the CTF data when opening an uncompressed + foreign-endian CTF file. Prune useless variable manipulation. + +2019-06-19 Nick Alcock + + * ctf-open.c (ctf_types): Fail when unidentified type kinds are + seen. + +2019-06-19 Nick Alcock + + * ctf-open.c (ctf_bufopen): Dump header offsets into the debugging + output. + +2019-06-19 Nick Alcock + + * ctf-subr.c (_PAGESIZE): Remove. + (ctf_data_alloc): Likewise. + (ctf_data_free): Likewise. + (ctf_data_protect): Likewise. + * ctf-impl.h: Remove declarations. + * ctf-create.c (ctf_update): No longer call ctf_data_protect: use + ctf_free, not ctf_data_free. + (ctf_compress_write): Use ctf_data_alloc, not ctf_alloc. Free + the buffer again on compression error. + * ctf-open.c (ctf_set_base): No longer track the size: call + ctf_free, not ctf_data_free. + (upgrade_types): Likewise. Call ctf_alloc, not ctf_data_alloc. + (ctf_bufopen): Likewise. No longer call ctf_data_protect. + +2019-06-19 Nick Alcock + + * ctf-create.c (ctf_dtd_insert): Pass on error returns from + ctf_dynhash_insert. + (ctf_dvd_insert): Likewise. + (ctf_add_generic): Likewise. + (ctf_add_variable): Likewise. + * ctf-impl.h: Adjust declarations. + +2019-06-14 Alan Modra + + * configure: Regenerate. + +2019-06-06 Nick Alcock + + * ctf-decls.h: Include . + * ctf-lookup.c (ctf_lookup_by_name): Call xstrndup(), not strndup(). + +2019-06-06 Nick Alcock + + * ctf-dump.c (ctf_dump_format_type): Cast size_t's used in printf()s. + (ctf_dump_objts): Likewise. + (ctf_dump_funcs): Likewise. + (ctf_dump_member): Likewise. + (ctf_dump_str): Likewise. + +2019-06-06 Nick Alcock + + * ctf-archive.c (arc_mmap_header): Mark fd as potentially unused. + * ctf-subr.c (ctf_data_protect): Mark both args as potentially unused. + +2019-06-05 Nick Alcock + + * ctf-archive.c (ctf_arc_write): Eschew %zi format specifier. + (ctf_arc_open_by_offset): Likewise. + * ctf-create.c (ctf_add_type): Likewise. + +2019-06-04 Tom Tromey + + * ctf-create.c (ctf_add_encoded, ctf_add_slice) + (ctf_add_member_offset): Use CHAR_BIT, not NBBY. + +2019-06-04 Nick Alcock + + * configure.ac: Check for O_CLOEXEC. + * ctf-decls.h (O_CLOEXEC): Define (to 0), if need be. + * config.h.in: Regenerate. + * configure: Likewise. + +2019-06-04 Nick Alcock + + * qsort_r.c: Rename to... + * ctf-qsort_r.c: ... this. + (_quicksort): Define to ctf_qsort_r. + * ctf-decls.h (qsort_r): Remove. + (ctf_qsort_r): Add. + (struct ctf_qsort_arg): New, transport the real ARG and COMPAR. + (ctf_qsort_compar_thunk): Rearrange the arguments to COMPAR. + * Makefile.am (libctf_a_LIBADD): Remove. + (libctf_a_SOURCES): New, add ctf-qsort_r.c. + * ctf-archive.c (ctf_arc_write): Call ctf_qsort_r, not qsort_r. + * ctf-create.c (ctf_update): Likewise. + * configure.ac: Check for BSD versus GNU qsort_r signature. + * Makefile.in: Regenerate. + * config.h.in: Likewise. + * configure: Likewise. + +2019-06-03 Nick Alcock + + * ctf-dump.c (ctf_dump_funcs): Free in the right place. + +2019-05-29 Nick Alcock + + * Makefile.am (ZLIB): New. + (ZLIBINC): Likewise. + (AM_CFLAGS): Use them. + (libctf_a_LIBADD): New, for LIBOBJS. + * configure.ac: Check for zlib, endian.h, and qsort_r. + * ctf-endian.h: New, providing htole64 and le64toh. + * swap.h: Code style fixes. + (bswap_identity_64): New. + * qsort_r.c: New, from gnulib (with one added #include). + * ctf-decls.h: New, providing a conditional qsort_r declaration, + and unconditional definitions of MIN and MAX. + * ctf-impl.h: Use it. Do not use . + (ctf_set_errno): Now returns unsigned long. + * ctf-util.c (ctf_set_errno): Adjust here too. + * ctf-archive.c: Use ctf-endian.h. + (ctf_arc_open_by_offset): Use memset, not bzero. Drop cts_type, + cts_flags and cts_offset. + (ctf_arc_write): Drop debugging dependent on the size of off_t. + * ctf-create.c: Provide a definition of roundup if not defined. + (ctf_create): Drop cts_type, cts_flags and cts_offset. + (ctf_add_reftype): Do not check if type IDs are below zero. + (ctf_add_slice): Likewise. + (ctf_add_typedef): Likewise. + (ctf_add_member_offset): Cast error-returning ssize_t's to size_t + when known error-free. Drop CTF_ERR usage for functions returning + int. + (ctf_add_member_encoded): Drop CTF_ERR usage for functions returning + int. + (ctf_add_variable): Likewise. + (enumcmp): Likewise. + (enumadd): Likewise. + (membcmp): Likewise. + (ctf_add_type): Likewise. Cast error-returning ssize_t's to size_t + when known error-free. + * ctf-dump.c (ctf_is_slice): Drop CTF_ERR usage for functions + returning int: use CTF_ERR for functions returning ctf_type_id. + (ctf_dump_label): Likewise. + (ctf_dump_objts): Likewise. + * ctf-labels.c (ctf_label_topmost): Likewise. + (ctf_label_iter): Likewise. + (ctf_label_info): Likewise. + * ctf-lookup.c (ctf_func_args): Likewise. + * ctf-open.c (upgrade_types): Cast to size_t where appropriate. + (ctf_bufopen): Likewise. Use zlib types as needed. + * ctf-types.c (ctf_member_iter): Drop CTF_ERR usage for functions + returning int. + (ctf_enum_iter): Likewise. + (ctf_type_size): Likewise. + (ctf_type_align): Likewise. Cast to size_t where appropriate. + (ctf_type_kind_unsliced): Likewise. + (ctf_type_kind): Likewise. + (ctf_type_encoding): Likewise. + (ctf_member_info): Likewise. + (ctf_array_info): Likewise. + (ctf_enum_value): Likewise. + (ctf_type_rvisit): Likewise. + * ctf-open-bfd.c (ctf_bfdopen): Drop cts_type, cts_flags and + cts_offset. + (ctf_simple_open): Likewise. + (ctf_bfdopen_ctfsect): Likewise. Set cts_size properly. + * Makefile.in: Regenerate. + * aclocal.m4: Likewise. + * config.h: Likewise. + * configure: Likewise. + +2019-05-28 Nick Alcock + + * configure.in: Check for bfd_section_from_elf_index. + * configure: Regenerate. + * config.h.in [HAVE_BFD_ELF]: Likewise. + * libctf/ctf_open_bfd (ctf_bfdopen_ctfsect): Use it. + abfd is potentially unused now. + +2019-05-28 Nick Alcock + + * Makefile.am: New. + * Makefile.in: Regenerated. + * config.h.in: Likewise. + * aclocal.m4: Likewise. + * configure: Likewise. + +2019-05-28 Nick Alcock + + * ctf-dump.c: New. + +2019-05-28 Nick Alcock + + * ctf-labels.c: New. + +2019-05-28 Nick Alcock + + * ctf-impl.h (_libctf_version): New declaration. + * ctf-subr.c (_libctf_version): Define it. + (ctf_version): New. + +2019-05-28 Nick Alcock + + * ctf-create.c (enumcmp): New. + (enumadd): Likewise. + (membcmp): Likewise. + (membadd): Likewise. + (ctf_add_type): Likewise. + +2019-05-28 Nick Alcock + + * ctf-lookup.c (isqualifier): New. + (ctf_lookup_by_name): Likewise. + (struct ctf_lookup_var_key): Likewise. + (ctf_lookup_var): Likewise. + (ctf_lookup_variable): Likewise. + (ctf_lookup_symbol_name): Likewise. + (ctf_lookup_by_symbol): Likewise. + (ctf_func_info): Likewise. + (ctf_func_args): Likewise. + +2019-05-28 Nick Alcock + + * ctf-decl.c: New file. + * ctf-types.c: Likewise. + * ctf-impl.h: New declarations. + +2019-05-28 Nick Alcock + + * ctf-open-bfd.c: New file. + * ctf-open.c (ctf_close): New. + * ctf-impl.h: Include bfd.h. + (ctf_file): New members ctf_data_mmapped, ctf_data_mmapped_len. + (ctf_archive_internal): New members ctfi_abfd, ctfi_data, + ctfi_bfd_close. + (ctf_bfdopen_ctfsect): New declaration. + (_CTF_SECTION): likewise. + +2019-05-28 Nick Alcock + + * ctf-archive.c: New. + * ctf-impl.h (ctf_archive_internal): New type. + (ctf_arc_open_internal): New declaration. + (ctf_arc_bufopen): Likewise. + (ctf_arc_close_internal): Likewise. + +2019-05-28 Nick Alcock + + * ctf-open.c: New file. + * swap.h: Likewise. + +2019-05-28 Nick Alcock + + * ctf-create.c: New file. + * ctf-lookup.c: New file. + +2019-05-28 Nick Alcock + + * ctf-impl.h: New definitions and declarations for type creation + and lookup. + +2019-05-28 Nick Alcock + + * ctf-hash.c: New file. + * ctf-impl.h: New declarations. + +2019-05-28 Nick Alcock + + * ctf-error.c: New file. + +2019-05-28 Nick Alcock + + * ctf-util.c: New file. + * elf.h: Likewise. + * ctf-impl.h: Include it, and add declarations. + +2019-05-28 Nick Alcock + + * ctf-impl.h: New file. + * ctf-subr.c: New file. + + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 76 +version-control: never +End: diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 92a95254a54..cf5fd0bb4c2 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3273 +1,6 @@ -2020-12-10 Nelson Chu - - * riscv-opc.c (riscv_opcodes): Add sext.[bh] and zext.[bhw]. - -2020-12-10 Nelson Chu - - * disassemble.h (riscv_get_disassembler): Declare. - * disassemble.c (disassembler): Changed to riscv_get_disassembler. - * riscv-dis.c (riscv_get_disassembler): Check the elf privileged spec - attributes before calling print_insn_riscv. - (parse_riscv_dis_option): Same as the assembler, the priority of elf - attributes are higher than the options. If we find the privileged - attributes, but the -Mpriv-spec= is different, then output error/warning - and still use the elf attributes set. - -2020-12-10 Nelson Chu - - * riscv-opc.c (riscv_opcodes): Control fence.i and csr instructions by - zifencei and zicsr. - -2020-12-04 Andreas Krebbel - - * s390-opc.txt: Add risbgz and risbgnz. - * s390-opc.c (U6_26): New operand type. - (INSTR_RIE_RRUUU2, MASK_RIE_RRUUU2): New instruction format and - mask. - -2020-12-03 Andreas Krebbel - - * s390-opc.txt: Add extended mnemonics. - -2020-12-01 Nelson Chu - - * riscv-opc.c (riscv_ext_version_table): Remove the p, v, n - and their versions. - -2020-12-01 Nelson Chu - - * riscv-opc.c (riscv_ext_version_table): Add zifencei. - -2020-11-28 Borislav Petkov - - * i386-dis.c (print_insn): Set active_seg_prefix for branch hint insns - to not dump branch hint prefixes 0x2E and 0x3E as unused prefixes. - -2020-11-16 Przemyslaw Wirkus - - * aarch64-tbl.h (FLAGM): Handle for FLAGM feature. - (struct aarch64_opcode): Move FLAGM instructions from V8_4_INSN to - FLAGM_INSN. - (AARCH64_FEATURE_FLAGMANIP): Update comment for FEAT_FlagM2. - -2020-11-14 Borislav Petkov - - * i386-dis.c (ckprefix): Do not assign active_seg_prefix in - 64-bit addressing mode. - (NOTRACK_Fixup): Test prefixes for PREFIX_DS, instead of - active_seg_prefix. - -2020-11-11 Przemyslaw Wirkus - - * aarch64-tbl.h: Enable -march=armv8.6-a+ls64. - -2020-11-09 Spencer E. Olson - - * pru-opc.c: Add opcode description for LMBD (left-most bit - detect). - -2020-11-09 Przemyslaw Wirkus - - * aarch64-opc.c: Add ACCDATA_EL1 system register - -2020-11-09 Przemyslaw Wirkus - - * aarch64-opc.c (aarch64_print_operand): Support operand AARCH64_OPND_Rt_LS64 - print. - * aarch64-tbl.h (struct aarch64_opcode): Update _LS64_INSN instructions with - Rt_ls64 operands. - * aarch64-asm-2.c: Regenerated. - * aarch64-dis-2.c: Regenerated. - * aarch64-opc-2.c: Regenerated. - -2020-11-06 Przemyslaw Wirkus - - * aarch64-tbl.h (PAC): Handle for PAC feature. - (PAC_INSN): New PAC instruction. - (struct aarch64_opcode): Move PAC instructions from V8_3_INSN to - PAC_INSN. - -2020-11-04 Przemyslaw Wirkus - - * aarch64-opc.c: Add RAS 1.1 new system registers: ERXPFGCTL_EL1, - ERXPFGCDN_EL1, ERXMISC2_EL1, ERXMISC3_EL1 and ERXPFGF_EL1. - -2020-11-03 Przemyslaw Wirkus - - * aarch64-tbl.h (QL_X2NIL): New qualifier for 64-byte stores. - (LS64): Handler with +ls64 feature flags. - (_LS64_INSN): New instruction group macro. - (struct aarch64_opcode): Add LS64 instructions. - * aarch64-asm-2.c: Regenerated. - * aarch64-dis-2.c: Regenerated. - * aarch64-opc-2.c: Regenerated. - -2020-10-30 Przemyslaw Wirkus - - * aarch65-tbl.h (struct aarch64_opcode): New instruction WFIT. - * aarch64-asm-2.c: Regenerated. - * aarch64-dis-2.c: Regenerated. - * aarch64-opc-2.c: Regenerated. - -2020-10-27 Przemyslaw Wirkus - - * aarch64-opc.c (aarch64_print_operand): CSR PDEC operand print-out. - * aarch64-tbl.h (CSRE): New CSRE feature handler. - (_CSRE_INSN): New CSRE instruction type. - (struct aarch64_opcode): New 'csre' entry for a CSRE CLI feature. - * aarch64-asm-2.c: Regenerated. - * aarch64-dis-2.c: Regenerated. - * aarch64-opc-2.c: Regenerated. - -2020-10-27 Przemyslaw Wirkus - - * aarch64-tbl.h (struct aarch64_opcode): Add new WFET instruction encoding - and operand description. - * aarch64-asm-2.c: Regenerated. - * aarch64-dis-2.c: Regenerated. - * aarch64-opc-2.c: Regenerated. - -2020-10-26 Cooper Qu - - * csky-opc.h (csky_v2_opcodes): Change plsl.u16 to plsl.16. - -2020-10-26 Cooper Qu - - * csky-dis.c (csky_output_operand): Add handler for - OPRND_TYPE_IMM5b_VSH and OPRND_TYPE_VREG_WITH_INDEX. - * csky-opc.h (OPRND_TYPE_VREG_WITH_INDEX): New enum. - (OPRND_TYPE_IMM5b_VSH): New enum. (csky_v2_opcodes): Fix and add - some instructions for VDSPV1. - -2020-10-26 Lili Cui - - * i386-dis.c: Change "XV" to print "{vex}" pseudo prefix. - -2020-10-23 Przemyslaw Wirkus - - * aarch64-asm.c (aarch64_ins_barrier_dsb_nxs): New inserter. - * aarch64-asm.h (AARCH64_DECL_OPD_INSERTER): New inserter - ins_barrier_dsb_nx. - * aarch64-dis.c (aarch64_ext_barrier_dsb_nxs): New extractor. - * aarch64-dis.h (AARCH64_DECL_OPD_EXTRACTOR): New extractor - ext_barrier_dsb_nx. - * aarch64-opc.c (aarch64_print_operand): New options table - aarch64_barrier_dsb_nxs_options. - * aarch64-opc.h (enum aarch64_field_kind): New field name FLD_CRm_dsb_nxs. - * aarch64-tbl.h (struct aarch64_opcode): Define DSB nXS barrier - Armv8.7-a instruction. - * aarch64-asm-2.c: Regenerated. - * aarch64-dis-2.c: Regenerated. - * aarch64-opc-2.c: Regenerated. - -2020-10-22 H.J. Lu - - * po/es.po: Remove the duplicated entry. - -2020-10-20 Dr. David Alan Gilbert - - * po/es.po: Fix printf format. - -2020-10-20 Ganesh Gopalasubramanian - - * i386-dis.c (rm_table): Add tlbsync, snp, invlpgb. - * i386-gen.c (cpu_flag_init): Add new CPU_INVLPGB_FLAGS, - CPU_TLBSYNC_FLAGS, and CPU_SNP_FLAGS. - Add CPU_ZNVER3_FLAGS. - (cpu_flags): Add CpuINVLPGB, CpuTLBSYNC, CpuSNP. - * i386-opc.h: Add CpuINVLPGB, CpuTLBSYNC, CpuSNP. - * i386-opc.tbl: Add invlpgb, tlbsync, psmash, pvalidate, - rmpupdate, rmpadjust. - * i386-init.h: Re-generated. - * i386-tbl.h: Re-generated. - -2020-10-16 Lili Cui - - * i386-opc.tbl: Rename CpuVEX_PREFIX to PseudoVexPrefix - and move it from cpu_flags to opcode_modifiers. - Use VexW0 and VexVVVV in the AVX-VNNI instructions. - * i386-gen.c: Likewise. - * i386-opc.h: Likewise. - * i386-opc.h: Likewise. - * i386-init.h: Regenerated. - * i386-tbl.h: Likewise. - -2020-10-16 Przemyslaw Wirkus - - * aarch64-tbl.h (ARMV8_7): New macro. - -2020-10-14 H.J. Lu - Lili Cui - - * i386-dis.c (PREFIX_VEX_0F3850): New. - (PREFIX_VEX_0F3851): Likewise. - (PREFIX_VEX_0F3852): Likewise. - (PREFIX_VEX_0F3853): Likewise. - (VEX_W_0F3850_P_2): Likewise. - (VEX_W_0F3851_P_2): Likewise. - (VEX_W_0F3852_P_2): Likewise. - (VEX_W_0F3853_P_2): Likewise. - (prefix_table): Add PREFIX_VEX_0F3850, PREFIX_VEX_0F3851, - PREFIX_VEX_0F3852 and PREFIX_VEX_0F3853. - (vex_table): Add VEX_W_0F3850_P_2, VEX_W_0F3851_P_2, - VEX_W_0F3852_P_2 and VEX_W_0F3853_P_2. - (putop): Add support for "XV" to print "{vex3}" pseudo prefix. - * i386-gen.c (cpu_flag_init): Clear the CpuAVX_VNNI bit in - CPU_UNKNOWN_FLAGS. Add CPU_AVX_VNNI_FLAGS and - CPU_ANY_AVX_VNNI_FLAGS. - (cpu_flags): Add CpuAVX_VNNI and CpuVEX_PREFIX. - * i386-opc.h (CpuAVX_VNNI): New. - (CpuVEX_PREFIX): Likewise. - (i386_cpu_flags): Add cpuavx_vnni and cpuvex_prefix. - * i386-opc.tbl: Add Intel AVX VNNI instructions. - * i386-init.h: Regenerated. - * i386-tbl.h: Likewise. - -2020-10-14 Lili Cui - H.J. Lu - - * i386-dis.c (PREFIX_0F3A0F): New. - (MOD_0F3A0F_PREFIX_1): Likewise. - (REG_0F3A0F_PREFIX_1_MOD_3): Likewise. - (RM_0F3A0F_P_1_MOD_3_REG_0): Likewise. - (prefix_table): Add PREFIX_0F3A0F. - (mod_table): Add MOD_0F3A0F_PREFIX_1. - (reg_table): Add REG_0F3A0F_PREFIX_1_MOD_3. - (rm_table): Add RM_0F3A0F_P_1_MOD_3_REG_0. - * i386-gen.c (cpu_flag_init): Add HRESET_FLAGS, - CPU_ANY_HRESET_FLAGS. - (cpu_flags): Add CpuHRESET. - (output_i386_opcode): Allow 4 byte base_opcode. - * i386-opc.h (enum): Add CpuHRESET. - (i386_cpu_flags): Add cpuhreset. - * i386-opc.tbl: Add Intel HRESET instruction. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2020-10-14 Lili Cui - - * i386-dis.c (enum): Add - PREFIX_MOD_3_0F01_REG_5_RM_4, - PREFIX_MOD_3_0F01_REG_5_RM_5, - PREFIX_MOD_3_0F01_REG_5_RM_6, - PREFIX_MOD_3_0F01_REG_5_RM_7, - X86_64_0F01_REG_5_MOD_3_RM_4_PREFIX_1, - X86_64_0F01_REG_5_MOD_3_RM_5_PREFIX_1, - X86_64_0F01_REG_5_MOD_3_RM_6_PREFIX_1, - X86_64_0F01_REG_5_MOD_3_RM_7_PREFIX_1, - X86_64_0FC7_REG_6_MOD_3_PREFIX_1. - (prefix_table): New instructions (see prefixes above). - (rm_table): Likewise - * i386-gen.c (cpu_flag_init): Add CPU_UINTR_FLAGS, - CPU_ANY_UINTR_FLAGS. - (cpu_flags): Add CpuUINTR. - * i386-opc.h (enum): Add CpuUINTR. - (i386_cpu_flags): Add cpuuintr. - * i386-opc.tbl: Add UINTR insns. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2020-10-14 H.J. Lu - - * i386-gen.c (process_i386_opcode_modifier): Return 1 for - non-VEX/EVEX/prefix encoding. - (output_i386_opcode): Fail if non-VEX/EVEX/prefix base_opcode - has a prefix byte. - * i386-opc.tbl: Replace the prefix byte in non-VEX/EVEX - base_opcode with PREFIX_0X66, PREFIX_0XF2 or PREFIX_0XF3. - * i386-tbl.h: Regenerated. - -2020-10-13 H.J. Lu - - * i386-gen.c (opcode_modifiers): Replace VexOpcode with - OpcodePrefix. - * i386-opc.h (VexOpcode): Renamed to ... - (OpcodePrefix): This. - (PREFIX_NONE): New. - (PREFIX_0X66): Likewise. - (PREFIX_0XF2): Likewise. - (PREFIX_0XF3): Likewise. - * i386-opc.tbl (Prefix_0X66): New. - (Prefix_0XF2): Likewise. - (Prefix_0XF3): Likewise. - Replace VexOpcode= with OpcodePrefix=. Use Prefix_0X66 on xorpd. - Use Prefix_0XF3 on cvtdq2pd. Use Prefix_0XF2 on cvtpd2dq. - * i386-tbl.h: Regenerated. - -2020-10-08 Przemyslaw Wirkus - - * aarch64-opc.c: Add BRBE system registers. - -2020-10-08 Przemyslaw Wirkus - - * aarch64-opc.c: New CSRE system registers defined. - -2020-10-05 Samanta Navarro - - * cgen-asm.c: Fix spelling mistakes. - * cgen-dis.c: Fix spelling mistakes. - * tic30-dis.c: Fix spelling mistakes. - -2020-10-05 H.J. Lu - - PR binutils/26704 - * i386-dis.c (putop): Always display suffix for %LQ in 64bit. - -2020-10-05 H.J. Lu - - PR binutils/26705 - * i386-dis.c (print_insn): Clear modrm if not needed. - (putop): Check need_modrm for modrm.mod != 3. Don't check - need_modrm for modrm.mod == 3. - -2020-09-28 Przemyslaw Wirkus - - * aarch64-opc.c: Added ETMv4 system registers TRCACATRn, TRCACVRn, - TRCAUTHSTATUS, TRCAUXCTLR, TRCBBCTLR, TRCCCCTLR, TRCCIDCCTLR0, TRCCIDCCTLR1, - TRCCIDCVRn, TRCCIDR0, TRCCIDR1, TRCCIDR2, TRCCIDR3, TRCCLAIMCLR, TRCCLAIMSET, - TRCCNTCTLRn, TRCCNTRLDVRn, TRCCNTVRn, TRCCONFIGR, TRCDEVAFF0, TRCDEVAFF1, - TRCDEVARCH, TRCDEVID, TRCDEVTYPE, TRCDVCMRn, TRCDVCVRn, TRCEVENTCTL0R, - TRCEVENTCTL1R, TRCEXTINSELR, TRCIDR0, TRCIDR1, TRCIDR2, TRCIDR3, TRCIDR4, - TRCIDR5, TRCIDR6, TRCIDR7, TRCIDR8, TRCIDR9, TRCIDR10, TRCIDR11, TRCIDR12, - TRCIDR13, TRCIMSPEC0, TRCIMSPECn, TRCITCTRL, TRCLAR WOTRCLSR, TRCOSLAR - WOTRCOSLSR, TRCPDCR, TRCPDSR, TRCPIDR0, TRCPIDR1, TRCPIDR2, TRCPIDR3, - TRCPIDR4, TRCPIDR[5,6,7], TRCPRGCTLR, TRCP,CSELR, TRCQCTLR, TRCRSCTLRn, - TRCSEQEVRn, TRCSEQRSTEVR, TRCSEQSTR, TRCSSCCRn, TRCSSCSRn, TRCSSPCICRn, - TRCSTALLCTLR, TRCSTATR, TRCSYNCPR, TRCTRACEIDR, TRCTSCTLR, TRCVDARCCTLR, - TRCVDCTLR, TRCVDSACCTLR, TRCVICTLR, TRCVIIECTLR, TRCVIPCSSCTLR, TRCVISSCTLR, - TRCVMIDCCTLR0, TRCVMIDCCTLR1 and TRCVMIDCVRn. - -2020-09-28 Przemyslaw Wirkus - - * aarch64-opc.c: Add ETE system registers TRCEXTINSELR<0-3> and TRCRSR. - -2020-09-28 Przemyslaw Wirkus - - * aarch64-opc.c: Add TRBE system registers TRBIDR_EL1 , TRBBASER_EL1 , - TRBLIMITR_EL1 , TRBMAR_EL1 , TRBPTR_EL1, TRBSR_EL1 and TRBTRG_EL1. - -2020-09-26 Alan Modra - - * csky-opc.h: Formatting. - (GENERAL_REG_BANK): Correct spelling. Update use throughout file. - (get_register_name): Mask arch with CSKY_ARCH_MASK for shift, - and shift 1u. - (get_register_number): Likewise. - * csky-dis.c (get_gr_name, get_cr_name): Don't mask mach_flag. - -2020-09-24 Lili Cui - - PR 26654 - * i386-dis.c (enum): Put MOD_VEX_0F38* together. - -2020-09-24 Andrew Burgess - - * csky-dis.c (csky_output_operand): Enclose body of if in curly - braces. - -2020-09-24 Lili Cui - - * i386-dis.c (enum): Add PREFIX_0F01_REG_1_RM_5, - PREFIX_0F01_REG_1_RM_6, PREFIX_0F01_REG_1_RM_7, - X86_64_0F01_REG_1_RM_5_P_2, X86_64_0F01_REG_1_RM_6_P_2, - X86_64_0F01_REG_1_RM_7_P_2. - (prefix_table): Likewise. - (x86_64_table): Likewise. - (rm_table): Likewise. - * i386-gen.c (cpu_flag_init): Add CPU_TDX_FLAGS - and CPU_ANY_TDX_FLAGS. - (cpu_flags): Add CpuTDX. - * i386-opc.h (enum): Add CpuTDX. - (i386_cpu_flags): Add cputdx. - * i386-opc.tbl: Add TDX insns. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2020-09-17 Cooper Qu <> - - * csky-dis.c (using_abi): New. - (parse_csky_dis_options): New function. - (get_gr_name): New function. - (get_cr_name): New function. - (csky_output_operand): Use get_gr_name and get_cr_name to - disassemble and add handle of OPRND_TYPE_IMM5b_LS. - (print_insn_csky): Parse disassembler options. - * csky-opc.h (OPRND_TYPE_IMM5b_LS): New enum. - (GENARAL_REG_BANK): Define. - (REG_SUPPORT_ALL): Define. - (REG_SUPPORT_ALL): New. - (ASH): Define. - (REG_SUPPORT_A): Define. - (REG_SUPPORT_B): Define. - (REG_SUPPORT_C): Define. - (REG_SUPPORT_D): Define. - (REG_SUPPORT_E): Define. - (csky_abiv1_general_regs): New. - (csky_abiv1_control_regs): New. - (csky_abiv2_general_regs): New. - (csky_abiv2_control_regs): New. - (get_register_name): New function. - (get_register_number): New function. - (csky_get_general_reg_name): New function. - (csky_get_general_regno): New function. - (csky_get_control_reg_name): New function. - (csky_get_control_regno): New function. - (csky_v2_opcodes): Prefer two oprerans format for bclri and - bseti, strengthen the operands legality check of addc, zext - and sext. - -2020-09-23 Lili Cui - - * i386-dis.c (enum): Add REG_0F38D8_PREFIX_1, - MOD_0F38FA_PREFIX_1, MOD_0F38FB_PREFIX_1, - MOD_0F38DC_PREFIX_1, MOD_0F38DD_PREFIX_1, - MOD_0F38DE_PREFIX_1, MOD_0F38DF_PREFIX_1, - PREFIX_0F38D8, PREFIX_0F38FA, PREFIX_0F38FB. - (reg_table): New instructions (see prefixes above). - (prefix_table): Likewise. - (three_byte_table): Likewise. - (mod_table): Likewise - * i386-gen.c (cpu_flag_init): Add CPU_KL_FLAGS, CPU_WIDE_KL_FLAGS, - CPU_ANY_KL_FLAGS and CPU_ANY_WIDE_KL_FLAGS. - (cpu_flags): Likewise. - (operand_type_init): Likewise. - * i386-opc.h (enum): Add CpuKL and CpuWide_KL. - (i386_cpu_flags): Add cpukl and cpuwide_kl. - * i386-opc.tbl: Add KL and WIDE_KL insns. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2020-09-21 Alan Modra - - * rx-dis.c (flag_names): Add missing comma. - (register_names, flag_names, double_register_names), - (double_register_high_names, double_register_low_names), - (double_control_register_names, double_condition_names): Remove - trailing commas. - -2020-09-18 David Faust - - * bpf-desc.c: Regenerate. - * bpf-desc.h: Likewise. - * bpf-opc.c: Likewise. - * bpf-opc.h: Likewise. - -2020-09-16 Andrew Burgess - - * csky-dis.c (csky_get_disassembler): Don't return NULL when there - is no BFD. - -2020-09-16 Alan Modra - - * ppc-dis.c (ppc_symbol_is_valid): Adjust elf_symbol_from invocation. - -2020-09-10 Nick Clifton - - * ppc-dis.c (ppc_symbol_is_valid): New function. Returns false - for hidden, local, no-type symbols. - (disassemble_init_powerpc): Point the symbol_is_valid field in the - info structure at the new function. - -2020-09-10 Cooper Qu - - * csky-opc.h (csky_v2_opcodes): Add L2Cache instructions. - * testsuite/gas/csky/cskyv2_ck860.d : Adjust to icache.iva - opcode fixing. - -2020-09-10 Nick Clifton - - * csky-dis.c (csky_output_operand): Coerce the immediate values to - long before printing. - -2020-09-10 Alan Modra - - * csky-dis.c (csky_output_operand): Don't sprintf str to itself. - -2020-09-07 Cooper Qu - - * csky-opc.h (csky_v2_opcodes): Change mvtc and mulsw's - ISA flag. - -2020-09-07 Cooper Qu - - * csky-dis.c (csky_output_operand): Add handlers for - OPRND_TYPE_HFLOAT_FMOVI, OPRND_TYPE_SFLOAT_FMOVI and - OPRND_TYPE_DFLOAT_FMOVI. Refine OPRND_TYPE_FREGLIST_DASH - to support FPUV3 instructions. - * csky-opc.h (enum operand_type): New enum OPRND_TYPE_IMM9b, - OPRND_TYPE_HFLOAT_FMOVI, OPRND_TYPE_SFLOAT_FMOVI and - OPRND_TYPE_DFLOAT_FMOVI. - (OPRND_MASK_4_5, OPRND_MASK_6, OPRND_MASK_6_7, OPRND_MASK_6_8, - OPRND_MASK_7, OPRND_MASK_7_8, OPRND_MASK_17_24, - OPRND_MASK_20, OPRND_MASK_20_21, OPRND_MASK_20_22, - OPRND_MASK_20_23, OPRND_MASK_20_24, OPRND_MASK_20_25, - OPRND_MASK_0_3or5_8, OPRND_MASK_0_3or6_7, OPRND_MASK_0_3or25, - OPRND_MASK_0_4or21_24, OPRND_MASK_5or20_21, - OPRND_MASK_5or20_22, OPRND_MASK_5or20_23, OPRND_MASK_5or20_24, - OPRND_MASK_5or20_25, OPRND_MASK_8_9or21_25, - OPRND_MASK_8_9or16_25, OPRND_MASK_4_6or20, OPRND_MASK_5_7or20, - OPRND_MASK_4_5or20or25, OPRND_MASK_4_6or20or25, - OPRND_MASK_4_7or20or25, OPRND_MASK_6_9or17_24, - OPRND_MASK_6_7or20, OPRND_MASK_6or20, OPRND_MASK_7or20, - OPRND_MASK_5or8_9or16_25, OPRND_MASK_5or8_9or20_25): Define. - (csky_v2_opcodes): Add FPUV3 instructions. - -2020-09-08 Alex Coplan - - * aarch64-dis.c (print_operands): Pass CPU features to - aarch64_print_operand(). - * aarch64-opc.c (aarch64_print_operand): Use CPU features to determine - preferred disassembly of system registers. - (SR_RNG): Refactor to use new SR_FEAT2 macro. - (SR_FEAT2): New. - (SR_V8_1_A): New. - (SR_V8_4_A): New. - (SR_V8_A): New. - (SR_V8_R): New. - (SR_EXPAND_ELx): New. - (SR_EXPAND_EL12): New. - (aarch64_sys_regs): Specify which registers are only on - A-profile, add R-profile system registers. - (ENC_BARLAR): New. - (PRBARn_ELx): New. - (PRLARn_ELx): New. - (aarch64_sys_ins_reg_supported_p): Reject EL3 registers for - Armv8-R AArch64. - -2020-09-08 Alex Coplan - - * aarch64-tbl.h (aarch64_feature_v8_r): New. - (ARMV8_R): New. - (V8_R_INSN): New. - (aarch64_opcode_table): Add dfb. - * aarch64-opc-2.c: Regenerate. - * aarch64-asm-2.c: Regenerate. - * aarch64-dis-2.c: Regenerate. - -2020-09-08 Alex Coplan - - * aarch64-dis.c (arch_variant): New. - (determine_disassembling_preference): Disassemble according to - arch variant. - (select_aarch64_variant): New. - (print_insn_aarch64): Set feature set. - -2020-09-02 Alan Modra - - * v850-opc.c (insert_i5div1, insert_i5div2, insert_i5div3), - (insert_d5_4, insert_d8_6, insert_d8_7, insert_v8, insert_d9), - (insert_u16_loop, insert_d16_15, insert_d16_16, insert_d17_16), - (insert_d22, insert_d23, insert_d23_align1, insert_i9, insert_u9), - (insert_spe, insert_r4, insert_POS, insert_WIDTH, insert_SELID), - (insert_VECTOR8, insert_VECTOR5, insert_CACHEOP, insert_PREFOP), - (nsert_IMM10U, insert_SRSEL1, insert_SRSEL2): Use unsigned long - for value parameter and update code to suit. - (extract_d9, extract_d16_15, extract_d16_16, extract_d17_16), - (extract_d22, extract_d23, extract_i9): Use unsigned long variables. - -2020-09-02 Alan Modra - - * i386-dis.c (OP_E_memory): Don't cast to signed type when - negating. - (get32, get32s): Use unsigned types in shift expressions. - -2020-09-02 Alan Modra - - * csky-dis.c (print_insn_csky): Use unsigned type for "given". - -2020-09-02 Alan Modra - - * crx-dis.c: Whitespace. - (print_arg): Use unsigned type for longdisp and mask variables, - and for left shift constant. - -2020-09-02 Alan Modra - - * cgen-ibld.in (insert_normal, extract_normal): Use 1UL in left shift. - * bpf-ibld.c: Regenerate. - * epiphany-ibld.c: Regenerate. - * fr30-ibld.c: Regenerate. - * frv-ibld.c: Regenerate. - * ip2k-ibld.c: Regenerate. - * iq2000-ibld.c: Regenerate. - * lm32-ibld.c: Regenerate. - * m32c-ibld.c: Regenerate. - * m32r-ibld.c: Regenerate. - * mep-ibld.c: Regenerate. - * mt-ibld.c: Regenerate. - * or1k-ibld.c: Regenerate. - * xc16x-ibld.c: Regenerate. - * xstormy16-ibld.c: Regenerate. - -2020-09-02 Alan Modra - - * bfin-dis.c (MASKBITS): Use SIGNBIT. - -2020-09-02 Cooper Qu - - * csky-opc.h (csky_v2_opcodes): Move divul and divsl - to CSKYV2_ISA_3E3R3 instruction set. - -2020-09-02 Cooper Qu - - * csky-opc.h (csky_v2_opcodes): Fix Encode of mulsws. - -2020-09-01 Alan Modra - - * mep-ibld.c: Regenerate. - -2020-08-31 Cooper Qu - - * csky-dis.c (csky_output_operand): Assign dis_info.value for - OPRND_TYPE_VREG. - -2020-08-30 Alan Modra - - * cr16-dis.c: Formatting. - (parameter): Delete struct typedef. Use dwordU instead - throughout file. - (make_argument ): Simplify detection of cbitb, sbitb - and tbitb. - (make_argument ): Extract 20-bit field not 16-bit. - -2020-08-29 Alan Modra - - PR 26446 - * csky-opc.h (MAX_OPRND_NUM): Define to 5. - (union csky_operand): Use MAX_OPRND_NUM to size oprnds array. - -2020-08-28 Alan Modra - - PR 26449 - PR 26450 - * cgen-ibld.in (insert_1): Use 1UL in forming mask. - (extract_normal): Likewise. - (insert_normal): Likewise, and move past zero length test. - (put_insn_int_value): Handle mask for zero length, use 1UL. - * bpf-ibld.c, * epiphany-ibld.c, * fr30-ibld.c, * frv-ibld.c, - * ip2k-ibld.c, * iq2000-ibld.c, * lm32-ibld.c, * m32c-ibld.c, - * m32r-ibld.c, * mep-ibld.c, * mt-ibld.c, * or1k-ibld.c, - * xc16x-ibld.c, * xstormy16-ibld.c: Regenerate. - -2020-08-28 Cooper Qu - - * csky-dis.c (CSKY_DEFAULT_ISA): Define. - (csky_dis_info): Add member isa. - (csky_find_inst_info): Skip instructions that do not belong to - current CPU. - (csky_get_disassembler): Get infomation from attribute section. - (print_insn_csky): Set defualt ISA flag. - * csky.h (CSKY_ISA_VDSP_2): Rename from CSKY_ISA_VDSP_V2. - * csky-opc.h (struct csky_opcode): Change isa_flag16 and - isa_flag32'type to unsigned 64 bits. - -2020-08-26 Jose E. Marchesi - - * disassemble.c (enum epbf_isa_attr): Add ISA_XBPFBE, ISA_EBPFMAX. - -2020-08-26 David Faust - - * bpf-desc.c: Regenerate. - * bpf-desc.h: Likewise. - * bpf-opc.c: Likewise. - * bpf-opc.h: Likewise. - * disassemble.c (disassemble_init_for_target): Set bits for xBPF - ISA when appropriate. - -2020-08-25 Alan Modra - - PR 26504 - * vax-dis.c (parse_disassembler_options): Always add at least one - to entry_addr_total_slots. - -2020-08-24 Cooper Qu - - * csky-dis.c (csky_find_inst_info): Skip CK860's instructions - in other CPUs to speed up disassembling. - * csky-opc.h (csky_v2_opcodes): Add CK860's instructions, - Change plsli.u16 to plsli.16, change sync's operand format. - -2020-08-21 Cooper Qu - - * csky-opc.h (csky_v2_opcodes): Add instruction bnezad. - -2020-08-21 Nick Clifton - - * aarch64-dis.c (get_sym_code_type): Return FALSE for non-ELF - symbols. - -2020-08-21 Cooper Qu - - * csky-opc.h (csky_v2_opcodes): Add two operands form for bloop. - -2020-08-19 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Replace OBF with BF for vcmpsq, - vcmpuq and xvtlsbb. - -2020-08-18 Peter Bergner - - * ppc-opc.c (powerpc_opcodes) : Rename from this... - : ...to this. - -2020-08-12 Alex Coplan - - * aarch64-opc.c (aarch64_sys_regs): Add MPAM registers. - -2020-08-12 Nick Clifton - - * po/sr.po: Updated Serbian translation. - -2020-08-11 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Move cctpl, cctpm and cctph. - -2020-08-10 Przemyslaw Wirkus - - * aarch64-opc.c (aarch64_print_operand): - (aarch64_sys_reg_deprecated_p): Functions paramaters changed. - (aarch64_sys_reg_supported_p): Function removed. - (aarch64_sys_ins_reg_supported_p): Functions paramaters changed. - (aarch64_sys_ins_reg_supported_p): Merged aarch64_sys_reg_supported_p - into this function. - -2020-08-10 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Add many mtspr and mfspr extended - instructions. - -2020-08-10 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Add exser, msgsndu, msgclru. - Enable icbt for power5, miso for power8. - -2020-08-10 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Prioritise mtfprd and mtvrd over - mtvsrd, and similarly for mfvsrd. - -2020-08-04 Christian Groessler - Tadashi G. Takaoka - - * z8kgen.c (opt): Fix "sout imm16,rs" and "soutb imm16,rbs" - opcodes (special "out" to absolute address). - * z8k-opc.h: Regenerate. - -2020-07-30 H.J. Lu - - PR gas/26305 - * i386-opc.h (Prefix_Disp8): New. - (Prefix_Disp16): Likewise. - (Prefix_Disp32): Likewise. - (Prefix_Load): Likewise. - (Prefix_Store): Likewise. - (Prefix_VEX): Likewise. - (Prefix_VEX3): Likewise. - (Prefix_EVEX): Likewise. - (Prefix_REX): Likewise. - (Prefix_NoOptimize): Likewise. - * i386-opc.tbl: Use Prefix_XXX on pseudo prefixes. Add {disp16}. - * i386-tbl.h: Regenerated. - -2020-07-29 Andreas Arnez - - * s390-mkopc.c (insertExpandedMnemonic): Handle unreachable - default case with abort() instead of printing an error message and - continuing, to avoid a maybe-uninitialized warning. - -2020-07-24 Nick Clifton - - * po/de.po: Updated German translation. - -2020-07-21 Jan Beulich - - * i386-dis.c (OP_E_memory): Revert previous change. - -2020-07-15 H.J. Lu - - PR gas/26237 - * i386-dis.c (OP_E_memory): Don't display eiz with no scale - without base nor index registers. - -2020-07-15 Jan Beulich - - * i386-dis.c (putop): Move 'V' and 'W' handling. - -2020-07-15 Jan Beulich - - * i386-dis.c (dis386): Adjust 'V' description. Use P-based - construct for push/pop of register. - (putop): Honor cond when handling 'P'. Drop handling of plain - 'V'. - -2020-07-15 Jan Beulich - - * i386-dis.c (dis386): Adjust 'P', 'T', 'U', and '@' - description. Drop '&' description. Use P for push of immediate, - pushf/popf, enter, and leave. Use %LP for lret/retf. - (dis386_twobyte): Use P for push/pop of fs/gs. - (reg_table): Use P for push/pop. Use @ for near call/jmp. - (x86_64_table): Use P for far call/jmp. - (putop): Drop handling of 'U' and '&'. Move and adjust handling - of '@'. Adjust handling of 'P' and 'T'. Drop case_P and case_Q - labels. - (OP_J): Drop marking of REX_W as used for v_mode (ISA-dependent) - and dqw_mode (unconditional). - -2020-07-14 H.J. Lu - - PR gas/26237 - * i386-dis.c (OP_E_memory): Without base nor index registers, - 32-bit displacement to 64 bits. - -2020-07-14 Claudiu Zissulescu - - * arc-dis.c (print_insn_arc): Detect and emit a warning when a - faulty double register pair is detected. - -2020-07-14 Jan Beulich - - * i386-dis.c (OP_D): Print dr instead of db in Intel mode. - -2020-07-14 Jan Beulich - - * i386-dis.c (OP_R, Rm): Delete. - (MOD_0F24, MOD_0F26): Rename to ... - (X86_64_0F24, X86_64_0F26): ... respectively. - (dis386): Update 'L' and 'Z' comments. - (dis386_twobyte): Replace Rm by Em. Change opcode 0F24 and 0F26 - table references. - (mod_table): Move opcode 0F24 and 0F26 entries ... - (x86_64_table): ... here. - (putop): Drop handling of 'L'. Set modrm.mod to 3 for 'Z'. Move - 'Z' case block. - -2020-07-14 Jan Beulich - - * i386-dis.c (Rd, Rdq, MaskR): Delete. - (MOD_EVEX_0F3828_P_1, MOD_EVEX_0F382A_P_1_W_1, - MOD_EVEX_0F3838_P_1, MOD_EVEX_0F383A_P_1_W_0, - MOD_EVEX_0F387A_W_0, MOD_EVEX_0F387B_W_0, - MOD_EVEX_0F387C): New enumerators. - (reg_table): Use Edq for rdssp. - (prefix_table): Use Edq for incssp. - (mod_table): Use Rm for move to/from %tr. Use MaskE for kand*, - kandn*, knot*, kor*, kxnor*, kxor*, kadd*, kunpck*, kortest*, - ktest*, and kshift*. Use Edq / MaskE for kmov*. - * i386-dis-evex.h: Reference mod_table[] for opcode 0F387C. - * i386-dis-evex-mod.h: New entries for opcodes 0F3828, 0F382A, - 0F3838, 0F383A, 0F387A, 0F387B, and 0F387C. - * i386-dis-evex-prefix.h: Reference mod_table[] for opcodes - 0F3828_P_1 and 0F3838_P_1. - * i386-dis-evex-w.h: Reference mod_table[] for opcodes - 0F382A_P_1, 0F383A_P_1, 0F387A, and 0F387B. - -2020-07-14 Jan Beulich - - * i386-dis.c (PREFIX_0F01_REG_7_MOD_3_RM_3, - PREFIX_0FAE_REG_5_MOD_0, PREFIX_0FC3_MOD_0, PREFIX_0F38C8, - PREFIX_0F38C9, PREFIX_0F38CA, PREFIX_0F38CB, PREFIX_0F38CC, - PREFIX_0F38CD, PREFIX_0F38F9, PREFIX_0F3ACC, PREFIX_VEX_0F77, - PREFIX_VEX_0F38F2, PREFIX_VEX_0F38F3_REG_1, - PREFIX_VEX_0F38F3_REG_2, PREFIX_VEX_0F38F3_REG_3): Delete. - (MOD_0F38F9_PREFIX_0, VEX_LEN_0F77_P_0, VEX_LEN_0F38F2_P_0, - VEX_LEN_0F38F3_R_1_P_0, VEX_LEN_0F38F3_R_2_P_0, - VEX_LEN_0F38F3_R_3_P_0): Rename to ... - (MOD_0F38F9, VEX_LEN_0F77, VEX_LEN_0F38F2, VEX_LEN_0F38F3_R_1, - VEX_LEN_0F38F3_R_2, VEX_LEN_0F38F3_R_3): ... these respectively. - (reg_table, prefix_table, three_byte_table, vex_table, - vex_len_table, mod_table, rm_table): Replace / remove respective - entries. - (intel_operand_size, OP_E_register, OP_G): Avoid undue setting - of PREFIX_DATA in used_prefixes. - -2020-07-14 Jan Beulich - - * i386-dis.c (MOD_VEX_0F3A30_L_0_W_0, MOD_VEX_0F3A30_L_0_W_1, - MOD_VEX_0F3A31_L_0_W_0, MOD_VEX_0F3A31_L_0_W_1, - MOD_VEX_0F3A32_L_0_W_0, MOD_VEX_0F3A32_L_0_W_1, - MOD_VEX_0F3A33_L_0_W_0, MOD_VEX_0F3A33_L_0_W_1): Replace by ... - (MOD_VEX_0F3A30_L_0, MOD_VEX_0F3A31_L_0, - MOD_VEX_0F3A32_L_0, MOD_VEX_0F3A33_L_0): ... these. - (VEX_W_0F3A30_L_0, VEX_W_0F3A31_L_0, VEX_W_0F3A32_L_0, - VEX_W_0F3A33_L_0): Delete. - (dis386): Adjust "BW" description. - (vex_len_table): Refer to mod_table[] for opcodes 0F3A30, - 0F3A31, 0F3A32, and 0F3A33. - (vex_w_table): Delete opcode 0F3A30, 0F3A31, 0F3A32, and 0F3A33 - entries. - (mod_table): Replace opcode 0F3A30, 0F3A31, 0F3A32, and 0F3A33 - entries. - -2020-07-14 Jan Beulich - - * i386-dis.c (PREFIX_0F6C, PREFIX_0F6D, PREFIX_0F73_REG_3, - PREFIX_0F73_REG_7, PREFIX_0F3810, PREFIX_0F3814, PREFIX_0F3815, - PREFIX_0F3817, PREFIX_0F3820, PREFIX_0F3821, PREFIX_0F3822, - PREFIX_0F3823, PREFIX_0F3824, PREFIX_0F3825, PREFIX_0F3828, - PREFIX_0F3829, PREFIX_0F382A, PREFIX_0F382B, PREFIX_0F3830, - PREFIX_0F3831, PREFIX_0F3832, PREFIX_0F3833, PREFIX_0F3834, - PREFIX_0F3835, PREFIX_0F3837, PREFIX_0F3838, PREFIX_0F3839, - PREFIX_0F383A, PREFIX_0F383B, PREFIX_0F383C, PREFIX_0F383D, - PREFIX_0F383E, PREFIX_0F383F, PREFIX_0F3840, PREFIX_0F3841, - PREFIX_0F3880, PREFIX_0F3881, PREFIX_0F3882, PREFIX_0F38CF, - PREFIX_0F38DB, PREFIX_0F38DC, PREFIX_0F38DD, PREFIX_0F38DE, - PREFIX_0F38DF, PREFIX_0F38F5, PREFIX_0F3A08, PREFIX_0F3A09, - PREFIX_0F3A0A, PREFIX_0F3A0B, PREFIX_0F3A0C, PREFIX_0F3A0D, - PREFIX_0F3A0E, PREFIX_0F3A14, PREFIX_0F3A15, PREFIX_0F3A16, - PREFIX_0F3A17, PREFIX_0F3A20, PREFIX_0F3A21, PREFIX_0F3A22, - PREFIX_0F3A40, PREFIX_0F3A41, PREFIX_0F3A42, PREFIX_0F3A44, - PREFIX_0F3A60, PREFIX_0F3A61, PREFIX_0F3A62, PREFIX_0F3A63, - PREFIX_0F3ACE, PREFIX_0F3ACF, PREFIX_0F3ADF, PREFIX_VEX_0F60, - PREFIX_VEX_0F61, PREFIX_VEX_0F62, PREFIX_VEX_0F63, - PREFIX_VEX_0F64, PREFIX_VEX_0F65, PREFIX_VEX_0F66, - PREFIX_VEX_0F67, PREFIX_VEX_0F68, PREFIX_VEX_0F69, - PREFIX_VEX_0F6A, PREFIX_VEX_0F6B, PREFIX_VEX_0F6C, - PREFIX_VEX_0F6D, PREFIX_VEX_0F6E, PREFIX_VEX_0F71_REG_2, - PREFIX_VEX_0F71_REG_4, PREFIX_VEX_0F71_REG_6, - PREFIX_VEX_0F72_REG_2, PREFIX_VEX_0F72_REG_4, - PREFIX_VEX_0F72_REG_6, PREFIX_VEX_0F73_REG_2, - PREFIX_VEX_0F73_REG_3, PREFIX_VEX_0F73_REG_6, - PREFIX_VEX_0F73_REG_7, PREFIX_VEX_0F74, - PREFIX_VEX_0F75, PREFIX_VEX_0F76, PREFIX_VEX_0FC4, - PREFIX_VEX_0FC5, PREFIX_VEX_0FD1, PREFIX_VEX_0FD2, - PREFIX_VEX_0FD3, PREFIX_VEX_0FD4, PREFIX_VEX_0FD5, - PREFIX_VEX_0FD6, PREFIX_VEX_0FD7, PREFIX_VEX_0FD8, - PREFIX_VEX_0FD9, PREFIX_VEX_0FDA, PREFIX_VEX_0FDB, - PREFIX_VEX_0FDC, PREFIX_VEX_0FDD, PREFIX_VEX_0FDE, - PREFIX_VEX_0FDF, PREFIX_VEX_0FE0, PREFIX_VEX_0FE1, - PREFIX_VEX_0FE2, PREFIX_VEX_0FE3, PREFIX_VEX_0FE4, - PREFIX_VEX_0FE5, PREFIX_VEX_0FE7, PREFIX_VEX_0FE8, - PREFIX_VEX_0FE9, PREFIX_VEX_0FEA, PREFIX_VEX_0FEB, - PREFIX_VEX_0FEC, PREFIX_VEX_0FED, PREFIX_VEX_0FEE, - PREFIX_VEX_0FEF, PREFIX_VEX_0FF1, PREFIX_VEX_0FF2, - PREFIX_VEX_0FF3, PREFIX_VEX_0FF4, PREFIX_VEX_0FF5, - PREFIX_VEX_0FF6, PREFIX_VEX_0FF7, PREFIX_VEX_0FF8, - PREFIX_VEX_0FF9, PREFIX_VEX_0FFA, PREFIX_VEX_0FFB, - PREFIX_VEX_0FFC, PREFIX_VEX_0FFD, PREFIX_VEX_0FFE, - PREFIX_VEX_0F3800, PREFIX_VEX_0F3801, PREFIX_VEX_0F3802, - PREFIX_VEX_0F3803, PREFIX_VEX_0F3804, PREFIX_VEX_0F3805, - PREFIX_VEX_0F3806, PREFIX_VEX_0F3807, PREFIX_VEX_0F3808, - PREFIX_VEX_0F3809, PREFIX_VEX_0F380A, PREFIX_VEX_0F380B, - PREFIX_VEX_0F380C, PREFIX_VEX_0F380D, PREFIX_VEX_0F380E, - PREFIX_VEX_0F380F, PREFIX_VEX_0F3813, PREFIX_VEX_0F3816, - PREFIX_VEX_0F3817, PREFIX_VEX_0F3818, PREFIX_VEX_0F3819, - PREFIX_VEX_0F381A, PREFIX_VEX_0F381C, PREFIX_VEX_0F381D, - PREFIX_VEX_0F381E, PREFIX_VEX_0F3820, PREFIX_VEX_0F3821, - PREFIX_VEX_0F3822, PREFIX_VEX_0F3823, PREFIX_VEX_0F3824, - PREFIX_VEX_0F3825, PREFIX_VEX_0F3828, PREFIX_VEX_0F3829, - PREFIX_VEX_0F382A, PREFIX_VEX_0F382B, PREFIX_VEX_0F382C, - PREFIX_VEX_0F382D, PREFIX_VEX_0F382E, PREFIX_VEX_0F382F, - PREFIX_VEX_0F3830, PREFIX_VEX_0F3831, PREFIX_VEX_0F3832, - PREFIX_VEX_0F3833, PREFIX_VEX_0F3834, PREFIX_VEX_0F3835, - PREFIX_VEX_0F3836, PREFIX_VEX_0F3837, PREFIX_VEX_0F3838, - PREFIX_VEX_0F3839, PREFIX_VEX_0F383A, PREFIX_VEX_0F383B, - PREFIX_VEX_0F383C, PREFIX_VEX_0F383D, PREFIX_VEX_0F383E, - PREFIX_VEX_0F383F, PREFIX_VEX_0F3840, PREFIX_VEX_0F3841, - PREFIX_VEX_0F3845, PREFIX_VEX_0F3846, PREFIX_VEX_0F3847, - PREFIX_VEX_0F3858, PREFIX_VEX_0F3859, PREFIX_VEX_0F385A, - PREFIX_VEX_0F3878, PREFIX_VEX_0F3879, PREFIX_VEX_0F388C, - PREFIX_VEX_0F388E, PREFIX_VEX_0F3890, PREFIX_VEX_0F3891, - PREFIX_VEX_0F3892, PREFIX_VEX_0F3893, PREFIX_VEX_0F3896, - PREFIX_VEX_0F3897, PREFIX_VEX_0F3898, PREFIX_VEX_0F3899, - PREFIX_VEX_0F389A, PREFIX_VEX_0F389B, PREFIX_VEX_0F389C, - PREFIX_VEX_0F389D, PREFIX_VEX_0F389E, PREFIX_VEX_0F389F, - PREFIX_VEX_0F38A6, PREFIX_VEX_0F38A7, PREFIX_VEX_0F38A8, - PREFIX_VEX_0F38A9, PREFIX_VEX_0F38AA, PREFIX_VEX_0F38AB, - PREFIX_VEX_0F38AC, PREFIX_VEX_0F38AD, PREFIX_VEX_0F38AE, - PREFIX_VEX_0F38AF, PREFIX_VEX_0F38B6, PREFIX_VEX_0F38B7, - PREFIX_VEX_0F38B8, PREFIX_VEX_0F38B9, PREFIX_VEX_0F38BA, - PREFIX_VEX_0F38BB, PREFIX_VEX_0F38BC, PREFIX_VEX_0F38BD, - PREFIX_VEX_0F38BE, PREFIX_VEX_0F38BF, PREFIX_VEX_0F38CF, - PREFIX_VEX_0F38DB, PREFIX_VEX_0F38DC, PREFIX_VEX_0F38DD, - PREFIX_VEX_0F38DE, PREFIX_VEX_0F38DF, PREFIX_VEX_0F3A00, - PREFIX_VEX_0F3A01, PREFIX_VEX_0F3A02, PREFIX_VEX_0F3A04, - PREFIX_VEX_0F3A05, PREFIX_VEX_0F3A06, PREFIX_VEX_0F3A08, - PREFIX_VEX_0F3A09, PREFIX_VEX_0F3A0A, PREFIX_VEX_0F3A0B, - PREFIX_VEX_0F3A0C, PREFIX_VEX_0F3A0D, PREFIX_VEX_0F3A0E, - PREFIX_VEX_0F3A0F, PREFIX_VEX_0F3A14, PREFIX_VEX_0F3A15, - PREFIX_VEX_0F3A16, PREFIX_VEX_0F3A17, PREFIX_VEX_0F3A18, - PREFIX_VEX_0F3A19, PREFIX_VEX_0F3A1D, PREFIX_VEX_0F3A20, - PREFIX_VEX_0F3A21, PREFIX_VEX_0F3A22, PREFIX_VEX_0F3A30, - PREFIX_VEX_0F3A31, PREFIX_VEX_0F3A32, PREFIX_VEX_0F3A33, - PREFIX_VEX_0F3A38, PREFIX_VEX_0F3A39, PREFIX_VEX_0F3A40, - PREFIX_VEX_0F3A41, PREFIX_VEX_0F3A42, PREFIX_VEX_0F3A44, - PREFIX_VEX_0F3A46, PREFIX_VEX_0F3A48, PREFIX_VEX_0F3A49, - PREFIX_VEX_0F3A4A, PREFIX_VEX_0F3A4B, PREFIX_VEX_0F3A4C, - PREFIX_VEX_0F3A5C, PREFIX_VEX_0F3A5D, PREFIX_VEX_0F3A5E, - PREFIX_VEX_0F3A5F, PREFIX_VEX_0F3A60, PREFIX_VEX_0F3A61, - PREFIX_VEX_0F3A62, PREFIX_VEX_0F3A63, PREFIX_VEX_0F3A68, - PREFIX_VEX_0F3A69, PREFIX_VEX_0F3A6A, PREFIX_VEX_0F3A6B, - PREFIX_VEX_0F3A6C, PREFIX_VEX_0F3A6D, PREFIX_VEX_0F3A6E, - PREFIX_VEX_0F3A6F, PREFIX_VEX_0F3A78, PREFIX_VEX_0F3A79, - PREFIX_VEX_0F3A7A, PREFIX_VEX_0F3A7B, PREFIX_VEX_0F3A7C, - PREFIX_VEX_0F3A7D, PREFIX_VEX_0F3A7E, PREFIX_VEX_0F3A7F, - PREFIX_VEX_0F3ACE, PREFIX_VEX_0F3ACF, PREFIX_VEX_0F3ADF, - PREFIX_EVEX_0F64, PREFIX_EVEX_0F65, PREFIX_EVEX_0F66, - PREFIX_EVEX_0F6E, PREFIX_EVEX_0F71_REG_2, - PREFIX_EVEX_0F71_REG_4, PREFIX_EVEX_0F71_REG_6, - PREFIX_EVEX_0F72_REG_0, PREFIX_EVEX_0F72_REG_1, - PREFIX_EVEX_0F72_REG_2, PREFIX_EVEX_0F72_REG_4, - PREFIX_EVEX_0F72_REG_6, PREFIX_EVEX_0F73_REG_2, - PREFIX_EVEX_0F73_REG_3, PREFIX_EVEX_0F73_REG_6, - PREFIX_EVEX_0F73_REG_7, PREFIX_EVEX_0F74, PREFIX_EVEX_0F75, - PREFIX_EVEX_0F76, PREFIX_EVEX_0FC4, PREFIX_EVEX_0FC5, - PREFIX_EVEX_0FD6, PREFIX_EVEX_0FDB, PREFIX_EVEX_0FDF, - PREFIX_EVEX_0FE2, PREFIX_EVEX_0FE7, PREFIX_EVEX_0FEB, - PREFIX_EVEX_0FEF, PREFIX_EVEX_0F380D, PREFIX_EVEX_0F3816, - PREFIX_EVEX_0F3819, PREFIX_EVEX_0F381A, PREFIX_EVEX_0F381B, - PREFIX_EVEX_0F381E, PREFIX_EVEX_0F381F, PREFIX_EVEX_0F382C, - PREFIX_EVEX_0F382D, PREFIX_EVEX_0F3836, PREFIX_EVEX_0F3837, - PREFIX_EVEX_0F383B, PREFIX_EVEX_0F383D, PREFIX_EVEX_0F383F, - PREFIX_EVEX_0F3840, PREFIX_EVEX_0F3842, PREFIX_EVEX_0F3843, - PREFIX_EVEX_0F3844, PREFIX_EVEX_0F3845, PREFIX_EVEX_0F3846, - PREFIX_EVEX_0F3847, PREFIX_EVEX_0F384C, PREFIX_EVEX_0F384D, - PREFIX_EVEX_0F384E, PREFIX_EVEX_0F384F, PREFIX_EVEX_0F3850, - PREFIX_EVEX_0F3851, PREFIX_EVEX_0F3854, PREFIX_EVEX_0F3855, - PREFIX_EVEX_0F3859, PREFIX_EVEX_0F385A, PREFIX_EVEX_0F385B, - PREFIX_EVEX_0F3862, PREFIX_EVEX_0F3863, PREFIX_EVEX_0F3864, - PREFIX_EVEX_0F3865, PREFIX_EVEX_0F3866, PREFIX_EVEX_0F3870, - PREFIX_EVEX_0F3871, PREFIX_EVEX_0F3873, PREFIX_EVEX_0F3875, - PREFIX_EVEX_0F3876, PREFIX_EVEX_0F3877, PREFIX_EVEX_0F387A, - PREFIX_EVEX_0F387B, PREFIX_EVEX_0F387C, PREFIX_EVEX_0F387D, - PREFIX_EVEX_0F387E, PREFIX_EVEX_0F387F, PREFIX_EVEX_0F3883, - PREFIX_EVEX_0F3888, PREFIX_EVEX_0F3889, PREFIX_EVEX_0F388A, - PREFIX_EVEX_0F388B, PREFIX_EVEX_0F388D, PREFIX_EVEX_0F388F, - PREFIX_EVEX_0F3890, PREFIX_EVEX_0F3891, PREFIX_EVEX_0F3892, - PREFIX_EVEX_0F3893, PREFIX_EVEX_0F38A0, PREFIX_EVEX_0F38A1, - PREFIX_EVEX_0F38A2, PREFIX_EVEX_0F38A3, PREFIX_EVEX_0F38B4, - PREFIX_EVEX_0F38B5, PREFIX_EVEX_0F38C4, - PREFIX_EVEX_0F38C6_REG_1, PREFIX_EVEX_0F38C6_REG_2, - PREFIX_EVEX_0F38C6_REG_5, PREFIX_EVEX_0F38C6_REG_6, - PREFIX_EVEX_0F38C7_REG_1, PREFIX_EVEX_0F38C7_REG_2, - PREFIX_EVEX_0F38C7_REG_5, PREFIX_EVEX_0F38C7_REG_6, - PREFIX_EVEX_0F38C8, PREFIX_EVEX_0F38CA, PREFIX_EVEX_0F38CB, - PREFIX_EVEX_0F38CC, PREFIX_EVEX_0F38CD, PREFIX_EVEX_0F3A00, - PREFIX_EVEX_0F3A01, PREFIX_EVEX_0F3A03, PREFIX_EVEX_0F3A05, - PREFIX_EVEX_0F3A08, PREFIX_EVEX_0F3A09, PREFIX_EVEX_0F3A0A, - PREFIX_EVEX_0F3A0B, PREFIX_EVEX_0F3A14, PREFIX_EVEX_0F3A15, - PREFIX_EVEX_0F3A16, PREFIX_EVEX_0F3A17, PREFIX_EVEX_0F3A18, - PREFIX_EVEX_0F3A19, PREFIX_EVEX_0F3A1A, PREFIX_EVEX_0F3A1B, - PREFIX_EVEX_0F3A1E, PREFIX_EVEX_0F3A1F, PREFIX_EVEX_0F3A20, - PREFIX_EVEX_0F3A21, PREFIX_EVEX_0F3A22, PREFIX_EVEX_0F3A23, - PREFIX_EVEX_0F3A25, PREFIX_EVEX_0F3A26, PREFIX_EVEX_0F3A27, - PREFIX_EVEX_0F3A38, PREFIX_EVEX_0F3A39, PREFIX_EVEX_0F3A3A, - PREFIX_EVEX_0F3A3B, PREFIX_EVEX_0F3A3E, PREFIX_EVEX_0F3A3F, - PREFIX_EVEX_0F3A42, PREFIX_EVEX_0F3A43, PREFIX_EVEX_0F3A50, - PREFIX_EVEX_0F3A51, PREFIX_EVEX_0F3A54, PREFIX_EVEX_0F3A55, - PREFIX_EVEX_0F3A56, PREFIX_EVEX_0F3A57, PREFIX_EVEX_0F3A66, - PREFIX_EVEX_0F3A67, PREFIX_EVEX_0F3A70, PREFIX_EVEX_0F3A71, - PREFIX_EVEX_0F3A72, PREFIX_EVEX_0F3A73): Delete. - (MOD_0F382A_PREFIX_2, MOD_0F38F5_PREFIX_2, - MOD_VEX_0FD7_PREFIX_2, MOD_VEX_0FE7_PREFIX_2, - MOD_VEX_0F381A_PREFIX_2, MOD_VEX_0F382A_PREFIX_2, - MOD_VEX_0F382C_PREFIX_2, MOD_VEX_0F382D_PREFIX_2, - MOD_VEX_0F382E_PREFIX_2, MOD_VEX_0F382F_PREFIX_2, - MOD_VEX_0F385A_PREFIX_2, MOD_VEX_0F388C_PREFIX_2, - MOD_VEX_0F388E_PREFIX_2, MOD_VEX_W_0_0F3A30_P_2_LEN_0, - MOD_VEX_W_1_0F3A30_P_2_LEN_0, MOD_VEX_W_0_0F3A31_P_2_LEN_0, - MOD_VEX_W_1_0F3A31_P_2_LEN_0, MOD_VEX_W_0_0F3A32_P_2_LEN_0, - MOD_VEX_W_1_0F3A32_P_2_LEN_0, MOD_VEX_W_0_0F3A33_P_2_LEN_0, - MOD_VEX_W_1_0F3A33_P_2_LEN_0, MOD_EVEX_0F381A_P_2_W_0, - MOD_EVEX_0F381A_P_2_W_1, MOD_EVEX_0F381B_P_2_W_0, - MOD_EVEX_0F381B_P_2_W_1, MOD_EVEX_0F385A_P_2_W_0, - MOD_EVEX_0F385A_P_2_W_1, MOD_EVEX_0F385B_P_2_W_0, - MOD_EVEX_0F385B_P_2_W_1, VEX_LEN_0F6E_P_2, - VEX_LEN_0FC4_P_2, VEX_LEN_0FC5_P_2, VEX_LEN_0FD6_P_2, - VEX_LEN_0FF7_P_2, VEX_LEN_0F3816_P_2, VEX_LEN_0F3819_P_2, - VEX_LEN_0F381A_P_2_M_0, VEX_LEN_0F3836_P_2, - VEX_LEN_0F3841_P_2, VEX_LEN_0F385A_P_2_M_0, - VEX_LEN_0F38DB_P_2, VEX_LEN_0F3A00_P_2, VEX_LEN_0F3A01_P_2, - VEX_LEN_0F3A06_P_2, VEX_LEN_0F3A14_P_2, VEX_LEN_0F3A15_P_2, - VEX_LEN_0F3A16_P_2, VEX_LEN_0F3A17_P_2, VEX_LEN_0F3A18_P_2, - VEX_LEN_0F3A19_P_2, VEX_LEN_0F3A20_P_2, VEX_LEN_0F3A21_P_2, - VEX_LEN_0F3A22_P_2, VEX_LEN_0F3A30_P_2, VEX_LEN_0F3A31_P_2, - VEX_LEN_0F3A32_P_2, VEX_LEN_0F3A33_P_2, VEX_LEN_0F3A38_P_2, - VEX_LEN_0F3A39_P_2, VEX_LEN_0F3A41_P_2, VEX_LEN_0F3A46_P_2, - VEX_LEN_0F3A60_P_2, VEX_LEN_0F3A61_P_2, VEX_LEN_0F3A62_P_2, - VEX_LEN_0F3A63_P_2, VEX_LEN_0F3ADF_P_2, EVEX_LEN_0F6E_P_2, - EVEX_LEN_0FC4_P_2, EVEX_LEN_0FC5_P_2, EVEX_LEN_0FD6_P_2, - EVEX_LEN_0F3816_P_2, EVEX_LEN_0F3819_P_2_W_0, - EVEX_LEN_0F3819_P_2_W_1, EVEX_LEN_0F381A_P_2_W_0_M_0, - EVEX_LEN_0F381A_P_2_W_1_M_0, EVEX_LEN_0F381B_P_2_W_0_M_0, - EVEX_LEN_0F381B_P_2_W_1_M_0, EVEX_LEN_0F3836_P_2, - EVEX_LEN_0F385A_P_2_W_0_M_0, EVEX_LEN_0F385A_P_2_W_1_M_0, - EVEX_LEN_0F385B_P_2_W_0_M_0, EVEX_LEN_0F385B_P_2_W_1_M_0, - EVEX_LEN_0F38C6_REG_1_PREFIX_2, EVEX_LEN_0F38C6_REG_2_PREFIX_2, - EVEX_LEN_0F38C6_REG_5_PREFIX_2, EVEX_LEN_0F38C6_REG_6_PREFIX_2, - EVEX_LEN_0F38C7_R_1_P_2_W_0, EVEX_LEN_0F38C7_R_1_P_2_W_1, - EVEX_LEN_0F38C7_R_2_P_2_W_0, EVEX_LEN_0F38C7_R_2_P_2_W_1, - EVEX_LEN_0F38C7_R_5_P_2_W_0, EVEX_LEN_0F38C7_R_5_P_2_W_1, - EVEX_LEN_0F38C7_R_6_P_2_W_0, EVEX_LEN_0F38C7_R_6_P_2_W_1, - EVEX_LEN_0F3A00_P_2_W_1, EVEX_LEN_0F3A01_P_2_W_1, - EVEX_LEN_0F3A14_P_2, EVEX_LEN_0F3A15_P_2, EVEX_LEN_0F3A16_P_2, - EVEX_LEN_0F3A17_P_2, EVEX_LEN_0F3A18_P_2_W_0, - EVEX_LEN_0F3A18_P_2_W_1, EVEX_LEN_0F3A19_P_2_W_0, - EVEX_LEN_0F3A19_P_2_W_1, EVEX_LEN_0F3A1A_P_2_W_0, - EVEX_LEN_0F3A1A_P_2_W_1, EVEX_LEN_0F3A1B_P_2_W_0, - EVEX_LEN_0F3A1B_P_2_W_1, EVEX_LEN_0F3A20_P_2, - EVEX_LEN_0F3A21_P_2_W_0, EVEX_LEN_0F3A22_P_2, - EVEX_LEN_0F3A23_P_2_W_0, EVEX_LEN_0F3A23_P_2_W_1, - EVEX_LEN_0F3A38_P_2_W_0, EVEX_LEN_0F3A38_P_2_W_1, - EVEX_LEN_0F3A39_P_2_W_0, EVEX_LEN_0F3A39_P_2_W_1, - EVEX_LEN_0F3A3A_P_2_W_0, EVEX_LEN_0F3A3A_P_2_W_1, - EVEX_LEN_0F3A3B_P_2_W_0, EVEX_LEN_0F3A3B_P_2_W_1, - EVEX_LEN_0F3A43_P_2_W_0, EVEX_LEN_0F3A43_P_2_W_1 - VEX_W_0F380C_P_2, VEX_W_0F380D_P_2, VEX_W_0F380E_P_2, - VEX_W_0F380F_P_2, VEX_W_0F3813_P_2, VEX_W_0F3816_P_2, - VEX_W_0F3818_P_2, VEX_W_0F3819_P_2, - VEX_W_0F381A_P_2_M_0_L_0, VEX_W_0F382C_P_2_M_0, - VEX_W_0F382D_P_2_M_0, VEX_W_0F382E_P_2_M_0, - VEX_W_0F382F_P_2_M_0, VEX_W_0F3836_P_2, - VEX_W_0F3846_P_2, VEX_W_0F3858_P_2, VEX_W_0F3859_P_2, - VEX_W_0F385A_P_2_M_0_L_0, VEX_W_0F3878_P_2, - VEX_W_0F3879_P_2, VEX_W_0F38CF_P_2, VEX_W_0F3A00_P_2, - VEX_W_0F3A01_P_2, VEX_W_0F3A02_P_2, VEX_W_0F3A04_P_2, - VEX_W_0F3A05_P_2, VEX_W_0F3A06_P_2_L_0, - VEX_W_0F3A18_P_2_L_0, VEX_W_0F3A19_P_2_L_0, - VEX_W_0F3A1D_P_2, VEX_W_0F3A30_P_2_LEN_0, - VEX_W_0F3A31_P_2_LEN_0, VEX_W_0F3A32_P_2_LEN_0, - VEX_W_0F3A33_P_2_LEN_0, VEX_W_0F3A38_P_2_L_0, - VEX_W_0F3A39_P_2_L_0, VEX_W_0F3A46_P_2_L_0, - VEX_W_0F3A4A_P_2, VEX_W_0F3A4B_P_2, VEX_W_0F3A4C_P_2, - VEX_W_0F3ACE_P_2, VEX_W_0F3ACF_P_2, EVEX_W_0F66_P_2, - EVEX_W_0F72_R_2_P_2, EVEX_W_0F72_R_6_P_2, - EVEX_W_0F73_R_2_P_2, EVEX_W_0F73_R_6_P_2, - EVEX_W_0F76_P_2, EVEX_W_0FD6_P_2, EVEX_W_0FE7_P_2, - EVEX_W_0F380D_P_2, EVEX_W_0F3819_P_2, - EVEX_W_0F381A_P_2, EVEX_W_0F381B_P_2, - EVEX_W_0F381E_P_2, EVEX_W_0F381F_P_2, - EVEX_W_0F3837_P_2, EVEX_W_0F3859_P_2, - EVEX_W_0F385A_P_2, EVEX_W_0F385B_P_2, - EVEX_W_0F3870_P_2, EVEX_W_0F387A_P_2, - EVEX_W_0F387B_P_2, EVEX_W_0F3883_P_2, - EVEX_W_0F3891_P_2, EVEX_W_0F3893_P_2, - EVEX_W_0F38A1_P_2, EVEX_W_0F38A3_P_2, - EVEX_W_0F38C7_R_1_P_2, EVEX_W_0F38C7_R_2_P_2, - EVEX_W_0F38C7_R_5_P_2, EVEX_W_0F38C7_R_6_P_2, - EVEX_W_0F3A00_P_2, EVEX_W_0F3A01_P_2, - EVEX_W_0F3A05_P_2, EVEX_W_0F3A08_P_2, - EVEX_W_0F3A09_P_2, EVEX_W_0F3A0A_P_2, - EVEX_W_0F3A0B_P_2, EVEX_W_0F3A18_P_2, - EVEX_W_0F3A19_P_2, EVEX_W_0F3A1A_P_2, - EVEX_W_0F3A1B_P_2, EVEX_W_0F3A21_P_2, - EVEX_W_0F3A23_P_2, EVEX_W_0F3A38_P_2, - EVEX_W_0F3A39_P_2, EVEX_W_0F3A3A_P_2, - EVEX_W_0F3A3B_P_2, EVEX_W_0F3A42_P_2, - EVEX_W_0F3A43_P_2, EVEX_W_0F3A70_P_2, - EVEX_W_0F3A72_P_2): Rename to ... - (MOD_0F382A, MOD_0F38F5, MOD_VEX_0FD7, MOD_VEX_0FE7, - MOD_VEX_0F381A, MOD_VEX_0F382A, MOD_VEX_0F382C, MOD_VEX_0F382D, - MOD_VEX_0F382E, MOD_VEX_0F382F, MOD_VEX_0F385A, MOD_VEX_0F388C, - MOD_VEX_0F388E, MOD_VEX_0F3A30_L_0_W_0, - MOD_VEX_0F3A30_L_0_W_1, MOD_VEX_0F3A31_L_0_W_0, - MOD_VEX_0F3A31_L_0_W_1, MOD_VEX_0F3A32_L_0_W_0, - MOD_VEX_0F3A32_L_0_W_1, MOD_VEX_0F3A33_L_0_W_0, - MOD_VEX_0F3A33_L_0_W_1, MOD_EVEX_0F381A_W_0, - MOD_EVEX_0F381A_W_1, MOD_EVEX_0F381B_W_0, MOD_EVEX_0F381B_W_1, - MOD_EVEX_0F385A_W_0, MOD_EVEX_0F385A_W_1, MOD_EVEX_0F385B_W_0, - MOD_EVEX_0F385B_W_1, VEX_LEN_0F6E, VEX_LEN_0FC4, VEX_LEN_0FC5, - VEX_LEN_0FD6, VEX_LEN_0FF7, VEX_LEN_0F3816, VEX_LEN_0F3819, - VEX_LEN_0F381A_M_0, VEX_LEN_0F3836, VEX_LEN_0F3841, - VEX_LEN_0F385A_M_0, VEX_LEN_0F38DB, VEX_LEN_0F3A00, - VEX_LEN_0F3A01, VEX_LEN_0F3A06, VEX_LEN_0F3A14, VEX_LEN_0F3A15, - VEX_LEN_0F3A16, VEX_LEN_0F3A17, VEX_LEN_0F3A18, VEX_LEN_0F3A19, - VEX_LEN_0F3A20, VEX_LEN_0F3A21, VEX_LEN_0F3A22, VEX_LEN_0F3A30, - VEX_LEN_0F3A31, VEX_LEN_0F3A32, VEX_LEN_0F3A33, VEX_LEN_0F3A38, - VEX_LEN_0F3A39, VEX_LEN_0F3A41, VEX_LEN_0F3A46, VEX_LEN_0F3A60, - VEX_LEN_0F3A61, VEX_LEN_0F3A62, VEX_LEN_0F3A63, VEX_LEN_0F3ADF, - EVEX_LEN_0F6E, EVEX_LEN_0FC4, EVEX_LEN_0FC5, EVEX_LEN_0FD6, - EVEX_LEN_0F3816, EVEX_LEN_0F3819_W_0, EVEX_LEN_0F3819_W_1, - EVEX_LEN_0F381A_W_0_M_0, EVEX_LEN_0F381A_W_1_M_0, - EVEX_LEN_0F381B_W_0_M_0, EVEX_LEN_0F381B_W_1_M_0, - EVEX_LEN_0F3836, EVEX_LEN_0F385A_W_0_M_0, - EVEX_LEN_0F385A_W_1_M_0, EVEX_LEN_0F385B_W_0_M_0, - EVEX_LEN_0F385B_W_1_M_0, EVEX_LEN_0F38C6_R_1_M_0, - EVEX_LEN_0F38C6_R_2_M_0, EVEX_LEN_0F38C6_R_5_M_0, - EVEX_LEN_0F38C6_R_6_M_0, EVEX_LEN_0F38C7_R_1_M_0_W_0, - EVEX_LEN_0F38C7_R_1_M_0_W_1, EVEX_LEN_0F38C7_R_2_M_0_W_0, - EVEX_LEN_0F38C7_R_2_M_0_W_1, EVEX_LEN_0F38C7_R_5_M_0_W_0, - EVEX_LEN_0F38C7_R_5_M_0_W_1, EVEX_LEN_0F38C7_R_6_M_0_W_0, - EVEX_LEN_0F38C7_R_6_M_0_W_1, EVEX_LEN_0F3A00_W_1, - EVEX_LEN_0F3A01_W_1, EVEX_LEN_0F3A14, EVEX_LEN_0F3A15, - EVEX_LEN_0F3A16, EVEX_LEN_0F3A17, EVEX_LEN_0F3A18_W_0, - EVEX_LEN_0F3A18_W_1, EVEX_LEN_0F3A19_W_0, - EVEX_LEN_0F3A19_W_1, EVEX_LEN_0F3A1A_W_0, - EVEX_LEN_0F3A1A_W_1, EVEX_LEN_0F3A1B_W_0, - EVEX_LEN_0F3A1B_W_1, EVEX_LEN_0F3A20, EVEX_LEN_0F3A21_W_0, - EVEX_LEN_0F3A22, EVEX_LEN_0F3A23_W_0, EVEX_LEN_0F3A23_W_1, - EVEX_LEN_0F3A38_W_0, EVEX_LEN_0F3A38_W_1, - EVEX_LEN_0F3A39_W_0, EVEX_LEN_0F3A39_W_1, - EVEX_LEN_0F3A3A_W_0, EVEX_LEN_0F3A3A_W_1, - EVEX_LEN_0F3A3B_W_0, EVEX_LEN_0F3A3B_W_1, - EVEX_LEN_0F3A43_W_0, EVEX_LEN_0F3A43_W_1 - VEX_W_0F380C, VEX_W_0F380D, VEX_W_0F380E, VEX_W_0F380F, - VEX_W_0F3813, VEX_W_0F3816_L_1, VEX_W_0F3818, - VEX_W_0F3819_L_1, VEX_W_0F381A_M_0_L_1, VEX_W_0F382C_M_0, - VEX_W_0F382D_M_0, VEX_W_0F382E_M_0, VEX_W_0F382F_M_0, - VEX_W_0F3836, VEX_W_0F3846, VEX_W_0F3858, VEX_W_0F3859, - VEX_W_0F385A_M_0_L_0, VEX_W_0F3878, VEX_W_0F3879, - VEX_W_0F38CF, VEX_W_0F3A00_L_1, VEX_W_0F3A01_L_1, - VEX_W_0F3A02, VEX_W_0F3A04, VEX_W_0F3A05, VEX_W_0F3A06_L_1, - VEX_W_0F3A18_L_1, VEX_W_0F3A19_L_1, VEX_W_0F3A1D, - VEX_W_0F3A30_L_0, VEX_W_0F3A31_L_0, VEX_W_0F3A32_L_0, - VEX_W_0F3A33_L_0, VEX_W_0F3A38_L_1, VEX_W_0F3A39_L_1, - VEX_W_0F3A46_L_1, VEX_W_0F3A4A, VEX_W_0F3A4B, VEX_W_0F3A4C, - VEX_W_0F3ACE, VEX_W_0F3ACF, EVEX_W_0F66, EVEX_W_0F72_R_2, - EVEX_W_0F72_R_6, EVEX_W_0F73_R_2, EVEX_W_0F73_R_6, - EVEX_W_0F76, EVEX_W_0FD6_L_0, EVEX_W_0FE7, EVEX_W_0F380D, - EVEX_W_0F3819, EVEX_W_0F381A, EVEX_W_0F381B, EVEX_W_0F381E, - EVEX_W_0F381F, EVEX_W_0F3837, EVEX_W_0F3859, EVEX_W_0F385A, - EVEX_W_0F385B, EVEX_W_0F3870, EVEX_W_0F387A, EVEX_W_0F387B, - EVEX_W_0F3883, EVEX_W_0F3891, EVEX_W_0F3893, EVEX_W_0F38A1, - EVEX_W_0F38A3, EVEX_W_0F38C7_R_1_M_0, - EVEX_W_0F38C7_R_2_M_0, EVEX_W_0F38C7_R_5_M_0, - EVEX_W_0F38C7_R_6_M_0, EVEX_W_0F3A00, EVEX_W_0F3A01, - EVEX_W_0F3A05, EVEX_W_0F3A08, EVEX_W_0F3A09, EVEX_W_0F3A0A, - EVEX_W_0F3A0B, EVEX_W_0F3A18, EVEX_W_0F3A19, EVEX_W_0F3A1A, - EVEX_W_0F3A1B, EVEX_W_0F3A21, EVEX_W_0F3A23, EVEX_W_0F3A38, - EVEX_W_0F3A39, EVEX_W_0F3A3A, EVEX_W_0F3A3B, EVEX_W_0F3A42, - EVEX_W_0F3A43, EVEX_W_0F3A70, EVEX_W_0F3A72): ... these - respectively. - (dis386_twobyte, three_byte_table, vex_table, vex_len_table, - vex_w_table, mod_table): Replace / remove respective entries. - (print_insn): Move up dp->prefix_requirement handling. Handle - PREFIX_DATA. - * i386-dis-evex.h, i386-dis-evex-len.h, i386-dis-evex-mod.h, - i386-dis-evex-prefix.h, i386-dis-evex-reg.h, i386-dis-evex-w.h: - Replace / remove respective entries. - -2020-07-14 Jan Beulich - - * i386-dis.c (PREFIX_EVEX_0F2C, PREFIX_EVEX_0F2D, - PREFIX_EVEX_0F2E, PREFIX_EVEX_0F2F): Delete. - (prefix_table): Add EXxEVexS operand to vcvttss2si, vcvttsd2si, - vcvtss2si, vcvtsd2si, vucomiss, and vucomisd table entries. - Retain X macro and PREFIX_OPCODE use from tjhe EVEX table for - the latter two. - * i386-dis-evex.h (evex_table): Reference VEX table for opcodes - 0F2C, 0F2D, 0F2E, and 0F2F. - * i386-dis-evex-prefix.h: Delete opcode 0F2C, 0F2D, 0F2E, and - 0F2F table entries. - -2020-07-14 Jan Beulich - - * i386-dis.c (OP_VexR, VexScalarR): New. - (OP_EX_Vex, OP_XMM_Vex, EXdVexScalarS, EXqVexScalarS, - XMVexScalar, d_scalar_swap_mode, q_scalar_swap_mode, - need_vex_reg): Delete. - (prefix_table): Replace VexScalar by VexScalarR and - XMVexScalar by XMScalar for vmovss and vmovsd. Replace - EXdVexScalarS by EXdS and EXqVexScalarS by EXqS. - (vex_len_table): Replace EXqVexScalarS by EXqS. - (get_valid_dis386): Don't set need_vex_reg. - (print_insn): Don't initialize need_vex_reg. - (intel_operand_size, OP_E_memory): Drop d_scalar_swap_mode and - q_scalar_swap_mode cases. - (OP_EX): Don't check for d_scalar_swap_mode and - q_scalar_swap_mode. - (OP_VEX): Done check need_vex_reg. - * i386-dis-evex-w.h: Replace VexScalar by VexScalarR and - XMVexScalar by XMScalar for vmovss and vmovsd. Replace - EXdVexScalarS by EXdS and EXqVexScalarS by EXqS. - -2020-07-14 Jan Beulich - - * i386-dis.c (Vex128, Vex256, vex128_mode, vex256_mode): Delete. - (VEX_W_0F381A_P_2_M_0, VEX_W_0F385A_P_2_M_0, VEX_W_0F3A06_P_2, - VEX_W_0F3A18_P_2, VEX_W_0F3A19_P_2, VEX_W_0F3A38_P_2, - VEX_W_0F3A39_P_2, VEX_W_0F3A46_P_2): Rename to ... - (VEX_W_0F381A_P_2_M_0_L_0, VEX_W_0F385A_P_2_M_0_L_0, - VEX_W_0F3A06_P_2_L_0, VEX_W_0F3A18_P_2_L_0, - VEX_W_0F3A19_P_2_L_0, VEX_W_0F3A38_P_2_L_0, - VEX_W_0F3A39_P_2_L_0, VEX_W_0F3A46_P_2_L_0): ... respectively. - (vex_table): Replace Vex128 by Vex. - (vex_len_table): Likewise. Adjust referenced enum names. - (vex_w_table): Replace Vex128 and Vex256 by Vex. Adjust - referenced enum names. - (OP_VEX): Drop vex128_mode and vex256_mode cases. - * i386-dis-evex-len.h (evex_len_table): Replace Vex128 by Vex. - -2020-07-14 Jan Beulich - - * i386-dis.c (dis386): "LW" description now applies to "DQ". - (putop): Handle "DQ". Don't handle "LW" anymore. - (prefix_table, mod_table): Replace %LW by %DQ. - * i386-dis-evex-len.h, i386-dis-evex-prefix.h: Likewise. - -2020-07-14 Jan Beulich - - * i386-dis.c (OP_E_memory): Move xmm_mw_mode, xmm_mb_mode, - dqd_mode, xmm_md_mode, d_mode, d_swap_mode, and - d_scalar_swap_mode case handling. Move shift adjsutment into - the case its applicable to. - -2020-07-14 Jan Beulich - - * i386-dis.c (EVEX_W_0F3862_P_2, EVEX_W_0F3863_P_2): Delete. - (EXbScalar, EXwScalar): Fold to ... - (EXbwUnit): ... this. - (b_scalar_mode, w_scalar_mode): Fold to ... - (bw_unit_mode): ... this. - (intel_operand_size, OP_E_memory): Replace b_scalar_mode / - w_scalar_mode handling by bw_unit_mode one. - * i386-dis-evex-w.h: Move entries for opcodes 0F3862 and 0F3863 - ... - * i386-dis-evex-prefix.h: ... here. - -2020-07-14 Jan Beulich - - * i386-dis.c (PCMPESTR_Fixup): Delete. - (dis386): Adjust "LQ" description. - (prefix_table): Make %LQ apply to AT&T case only for cvtsi2ss, - cvtsi2sd, ptwrite, vcvtsi2ss, and vcvtsi2sd. Replace use of - PCMPESTR_Fixup by !%LQ and EXx for pcmpestrm, pcmpestri, - vpcmpestrm, and vpcmpestri. - (putop): Honor "cond" when handling LQ. - * i386-dis-evex-prefix.h: Make %LQ apply to AT&T case only for - vcvtsi2ss and vcvtusi2ss. - * i386-dis-evex-w.h: Make %LQ apply to AT&T case only for - vcvtsi2sd and vcvtusi2sd. - -2020-07-14 Jan Beulich - - * i386-dis.c (VCMP_Fixup, VCMP): Delete. - (simd_cmp_op): Add const. - (vex_cmp_op): Move up and drop initial 8 entries. Add const. - (CMP_Fixup): Handle VEX case. - (prefix_table): Replace VCMP by CMP. - * i386-dis-evex-prefix.h, i386-dis-evex-w.h: Likewise. - -2020-07-14 Jan Beulich - - * i386-dis.c (MOVBE_Fixup): Delete. - (Mv): Define. - (prefix_table): Use Mv for movbe entries. - -2020-07-14 Jan Beulich - - * i386-dis.c (CRC32_Fixup): Delete. - (prefix_table): Use Eb/Ev for crc32 entries. - -2020-07-14 Jan Beulich - - * i386-dis.c (OP_E_register, OP_G, OP_REG, CRC32_Fixup): - Conditionalize invocations of "USED_REX (0)". - -2020-07-14 Jan Beulich - - * i386-dis.c (eBX, eCX, eDX, eSP, eBP, eSI, eDI, DL, BL, AH, - CH, DH, BH, AX, DX): Delete. - (OP_IMREG): Drop handling of eBX_reg, eCX_reg, eDX_reg, eSP_reg, - eBP_reg, eSI_reg, eDI_reg, dl_reg, bl_reg, ah_reg, ch_reg, - dh_reg, bh_reg, ax_reg, and dx_reg. Simplify what's left. - -2020-07-10 Lili Cui - - * i386-dis.c (TMM): New. - (EXtmm): Likewise. - (VexTmm): Likewise. - (MVexSIBMEM): Likewise. - (tmm_mode): Likewise. - (vex_sibmem_mode): Likewise. - (REG_VEX_0F3849_X86_64_P_0_W_0_M_1): Likewise. - (MOD_VEX_0F3849_X86_64_P_0_W_0): Likewise. - (MOD_VEX_0F3849_X86_64_P_2_W_0): Likewise. - (MOD_VEX_0F3849_X86_64_P_3_W_0): Likewise. - (MOD_VEX_0F384B_X86_64_P_1_W_0): Likewise. - (MOD_VEX_0F384B_X86_64_P_2_W_0): Likewise. - (MOD_VEX_0F384B_X86_64_P_3_W_0): Likewise. - (MOD_VEX_0F385C_X86_64_P_1_W_0): Likewise. - (MOD_VEX_0F385E_X86_64_P_0_W_0): Likewise. - (MOD_VEX_0F385E_X86_64_P_1_W_0): Likewise. - (MOD_VEX_0F385E_X86_64_P_2_W_0): Likewise. - (MOD_VEX_0F385E_X86_64_P_3_W_0): Likewise. - (RM_VEX_0F3849_X86_64_P_0_W_0_M_1_R_0): Likewise. - (PREFIX_VEX_0F3849_X86_64): Likewise. - (PREFIX_VEX_0F384B_X86_64): Likewise. - (PREFIX_VEX_0F385C_X86_64): Likewise. - (PREFIX_VEX_0F385E_X86_64): Likewise. - (X86_64_VEX_0F3849): Likewise. - (X86_64_VEX_0F384B): Likewise. - (X86_64_VEX_0F385C): Likewise. - (X86_64_VEX_0F385E): Likewise. - (VEX_LEN_0F3849_X86_64_P_0_W_0_M_0): Likewise. - (VEX_LEN_0F3849_X86_64_P_0_W_0_M_1_REG_0_RM_0): Likewise. - (VEX_LEN_0F3849_X86_64_P_2_W_0_M_0): Likewise. - (VEX_LEN_0F3849_X86_64_P_3_W_0_M_0): Likewise. - (VEX_LEN_0F384B_X86_64_P_1_W_0_M_0): Likewise. - (VEX_LEN_0F384B_X86_64_P_2_W_0_M_0): Likewise. - (VEX_LEN_0F384B_X86_64_P_3_W_0_M_0): Likewise. - (VEX_LEN_0F385C_X86_64_P_1_W_0_M_0): Likewise. - (VEX_LEN_0F385E_X86_64_P_0_W_0_M_0): Likewise. - (VEX_LEN_0F385E_X86_64_P_1_W_0_M_0): Likewise. - (VEX_LEN_0F385E_X86_64_P_2_W_0_M_0): Likewise. - (VEX_LEN_0F385E_X86_64_P_3_W_0_M_0): Likewise. - (VEX_W_0F3849_X86_64_P_0): Likewise. - (VEX_W_0F3849_X86_64_P_2): Likewise. - (VEX_W_0F3849_X86_64_P_3): Likewise. - (VEX_W_0F384B_X86_64_P_1): Likewise. - (VEX_W_0F384B_X86_64_P_2): Likewise. - (VEX_W_0F384B_X86_64_P_3): Likewise. - (VEX_W_0F385C_X86_64_P_1): Likewise. - (VEX_W_0F385E_X86_64_P_0): Likewise. - (VEX_W_0F385E_X86_64_P_1): Likewise. - (VEX_W_0F385E_X86_64_P_2): Likewise. - (VEX_W_0F385E_X86_64_P_3): Likewise. - (names_tmm): Likewise. - (att_names_tmm): Likewise. - (intel_operand_size): Handle void_mode. - (OP_XMM): Handle tmm_mode. - (OP_EX): Likewise. - (OP_VEX): Likewise. - * i386-gen.c (cpu_flag_init): Add entries for CpuAMX_INT8, - CpuAMX_BF16 and CpuAMX_TILE. - (operand_type_shorthands): Add RegTMM. - (operand_type_init): Likewise. - (operand_types): Add Tmmword. - (cpu_flag_init): Add CPU_AMX_INT8, CpuAMX_BF16 and CpuAMX_TILE. - (cpu_flags): Add CpuAMX_INT8, CpuAMX_BF16 and CpuAMX_TILE. - * i386-opc.h (CpuAMX_INT8): New. - (CpuAMX_BF16): Likewise. - (CpuAMX_TILE): Likewise. - (SIBMEM): Likewise. - (Tmmword): Likewise. - (i386_cpu_flags): Add cpuamx_int8, cpuamx_bf16 and cpuamx_tile. - (i386_opcode_modifier): Extend width of fields vexvvvv and sib. - (i386_operand_type): Add tmmword. - * i386-opc.tbl: Add AMX instructions. - * i386-reg.tbl: Add AMX registers. - * i386-init.h: Regenerated. - * i386-tbl.h: Likewise. - -2020-07-08 Jan Beulich - - * i386-dis.c (OP_LWPCB_E, OP_LWP_E): Delete. - (REG_XOP_LWPCB, REG_XOP_LWP, REG_XOP_TBM_01, REG_XOP_TBM_02): - Rename to ... - (REG_0FXOP_09_12_M_1_L_0, REG_0FXOP_0A_12_L_0, - REG_0FXOP_09_01_L_0, REG_0FXOP_09_02_L_0): ... these - respectively. - (MOD_VEX_0FXOP_09_12, VEX_LEN_0FXOP_08_85, VEX_LEN_0FXOP_08_86, - VEX_LEN_0FXOP_08_87, VEX_LEN_0FXOP_08_8E, VEX_LEN_0FXOP_08_8F, - VEX_LEN_0FXOP_08_95, VEX_LEN_0FXOP_08_96, VEX_LEN_0FXOP_08_97, - VEX_LEN_0FXOP_08_9E, VEX_LEN_0FXOP_08_9F, VEX_LEN_0FXOP_08_A3, - VEX_LEN_0FXOP_08_A6, VEX_LEN_0FXOP_08_B6, VEX_LEN_0FXOP_08_C0, - VEX_LEN_0FXOP_08_C1, VEX_LEN_0FXOP_08_C2, VEX_LEN_0FXOP_08_C3, - VEX_LEN_0FXOP_09_01, VEX_LEN_0FXOP_09_02, VEX_LEN_0FXOP_09_12_M_1, - VEX_LEN_0FXOP_09_90, VEX_LEN_0FXOP_09_91, VEX_LEN_0FXOP_09_92, - VEX_LEN_0FXOP_09_93, VEX_LEN_0FXOP_09_94, VEX_LEN_0FXOP_09_95, - VEX_LEN_0FXOP_09_96, VEX_LEN_0FXOP_09_97, VEX_LEN_0FXOP_09_98, - VEX_LEN_0FXOP_09_99, VEX_LEN_0FXOP_09_9A, VEX_LEN_0FXOP_09_9B, - VEX_LEN_0FXOP_09_C1, VEX_LEN_0FXOP_09_C2, VEX_LEN_0FXOP_09_C3, - VEX_LEN_0FXOP_09_C6, VEX_LEN_0FXOP_09_C7, VEX_LEN_0FXOP_09_CB, - VEX_LEN_0FXOP_09_D1, VEX_LEN_0FXOP_09_D2, VEX_LEN_0FXOP_09_D3, - VEX_LEN_0FXOP_09_D6, VEX_LEN_0FXOP_09_D7, VEX_LEN_0FXOP_09_DB, - VEX_LEN_0FXOP_09_E1, VEX_LEN_0FXOP_09_E2, VEX_LEN_0FXOP_09_E3, - VEX_LEN_0FXOP_0A_12, VEX_W_0FXOP_08_85_L_0, - VEX_W_0FXOP_08_86_L_0, VEX_W_0FXOP_08_87_L_0, - VEX_W_0FXOP_08_8E_L_0, VEX_W_0FXOP_08_8F_L_0, - VEX_W_0FXOP_08_95_L_0, VEX_W_0FXOP_08_96_L_0, - VEX_W_0FXOP_08_97_L_0, VEX_W_0FXOP_08_9E_L_0, - VEX_W_0FXOP_08_9F_L_0, VEX_W_0FXOP_08_A6_L_0, - VEX_W_0FXOP_08_B6_L_0, VEX_W_0FXOP_08_C0_L_0, - VEX_W_0FXOP_08_C1_L_0, VEX_W_0FXOP_08_C2_L_0, - VEX_W_0FXOP_08_C3_L_0, VEX_W_0FXOP_08_CC_L_0, - VEX_W_0FXOP_08_CD_L_0, VEX_W_0FXOP_08_CE_L_0, - VEX_W_0FXOP_08_CF_L_0, VEX_W_0FXOP_08_EC_L_0, - VEX_W_0FXOP_08_ED_L_0, VEX_W_0FXOP_08_EE_L_0, - VEX_W_0FXOP_08_EF_L_0, VEX_W_0FXOP_09_C1_L_0, - VEX_W_0FXOP_09_C2_L_0, VEX_W_0FXOP_09_C3_L_0, - VEX_W_0FXOP_09_C6_L_0, VEX_W_0FXOP_09_C7_L_0, - VEX_W_0FXOP_09_CB_L_0, VEX_W_0FXOP_09_D1_L_0, - VEX_W_0FXOP_09_D2_L_0, VEX_W_0FXOP_09_D3_L_0, - VEX_W_0FXOP_09_D6_L_0, VEX_W_0FXOP_09_D7_L_0, - VEX_W_0FXOP_09_DB_L_0, VEX_W_0FXOP_09_E1_L_0, - VEX_W_0FXOP_09_E2_L_0, VEX_W_0FXOP_09_E3_L_0): New enumerators. - (reg_table): Re-order XOP entries. Adjust their operands. - (xop_table): Replace 08_85, 08_86, 08_87, 08_8E, 08_8F, 08_95, - 08_96, 08_97, 08_9E, 08_9F, 08_A3, 08_A6, 08_B6, 08_C0, 08_C1, - 08_C2, 08_C3, 09_01, 09_02, 09_12, 09_90, 09_91, 09_92, 09_93, - 09_94, 09_95, 09_96, 09_97, 09_98, 09_99, 09_9A, 09_9B, 09_C1, - 09_C2, 09_C3, 09_C6, 09_C7, 09_CB, 09_D1, 09_D2, 09_D3, 09_D6, - 09_D7, 09_DB, 09_E1, 09_E2, 09_E3, and VEX_LEN_0FXOP_0A_12 - entries by references ... - (vex_len_table): ... to resepctive new entries here. For several - new and existing entries reference ... - (vex_w_table): ... new entries here. - (mod_table): New MOD_VEX_0FXOP_09_12 entry. - -2020-07-08 Jan Beulich - - * i386-dis.c (XMVexScalarI4): Define. - (VEX_LEN_0F3A6A_P_2, VEX_LEN_0F3A6B_P_2, VEX_LEN_0F3A6E_P_2, - VEX_LEN_0F3A6F_P_2, VEX_LEN_0F3A7A_P_2, VEX_LEN_0F3A7B_P_2, - VEX_LEN_0F3A7E_P_2, VEX_LEN_0F3A7F_P_2): Delete. - (vex_len_table): Move scalar FMA4 entries ... - (prefix_table): ... here. - (OP_REG_VexI4): Handle scalar_mode. - * i386-opc.tbl: Use VexLIG for scalar FMA4 insns. - * i386-tbl.h: Re-generate. - -2020-07-08 Jan Beulich - - * i386-dis.c (OP_Vex_2src_1, OP_Vex_2src_2, Vex_2src_1, - Vex_2src_2): Delete. - (OP_VexW, VexW): New. - (xop_table): Use EXx for rotates by immediate. Use EXx and VexW - for shifts and rotates by register. - -2020-07-08 Jan Beulich - - * i386-dis.c (OP_EX_VexImmW, OP_XMM_VexW, EXVexImmW, XMVexW, - VEX_W_0F3A48_P_2, VEX_W_0F3A49_P_2, vex_w_done, get_vex_imm8, - OP_EX_VexReg): Delete. - (OP_VexI4, VexI4): New. - (vex_w_table): Move vpermil2ps and vpermil2pd entries ... - (prefix_table): ... here. - (print_insn): Drop setting of vex_w_done. - -2020-07-08 Jan Beulich - - * i386-dis.c (OP_EX_VexW, EXVexW, EXdVexW, EXqVexW): Delete. - (prefix_table, vex_len_table): Replace operands for FMA4 insns. - (xop_table): Replace operands of 4-operand insns. - (OP_REG_VexI4): Move VEX.W based operand swaping here. - -2020-07-07 Claudiu Zissulescu - - * arc-opc.c (insert_rbd): New function. - (RBD): Define. - (RBDdup): Likewise. - * arc-tbl.h (vadd2, vadd4h, vmac2h, vmpy2h, vsub4h): Update - instructions. - -2020-07-07 Jan Beulich - - * i386-dis.c (EVEX_W_0F3826_P_1, EVEX_W_0F3826_P_2, - EVEX_W_0F3828_P_1, EVEX_W_0F3829_P_1, EVEX_W_0F3854_P_2, - EVEX_W_0F3866_P_2, EVEX_W_0F3875_P_2, EVEX_W_0F387D_P_2, - EVEX_W_0F388D_P_2, EVEX_W_0F3A3E_P_2, EVEX_W_0F3A3F_P_2): - Delete. - (putop): Handle "BW". - * i386-dis-evex-w.h: Move entries for opcodes 0F3826, 0F3826, - 0F3828, 0F3829, 0F3854, 0F3866, 0F3875, 0F387D, 0F388D, 0F3A3E, - and 0F3A3F ... - * i386-dis-evex-prefix.h: ... here. - -2020-07-06 Jan Beulich - - * i386-dis.c (VEX_LEN_0FXOP_09_80, VEX_LEN_0FXOP_09_81): Delete. - (VEX_LEN_0FXOP_09_82_W_0, VEX_LEN_0FXOP_09_83_W_0, - VEX_W_0FXOP_09_80, VEX_W_0FXOP_09_81, VEX_W_0FXOP_09_82, - VEX_W_0FXOP_09_83): New enumerators. - (xop_table): Reference the above. - (vex_len_table): Replace vfrczp* entries by vfrczs* ones. - (vex_w_table): New VEX_W_0FXOP_09_80, VEX_W_0FXOP_09_81, - VEX_W_0FXOP_09_82, and VEX_W_0FXOP_09_83 entries. - (get_valid_dis386): Return bad_opcode for XOP.PP != 0. - -2020-07-06 Jan Beulich - - * i386-dis.c (EVEX_W_0F3838_P_1, - EVEX_W_0F3839_P_1, EVEX_W_0F3840_P_2, EVEX_W_0F3855_P_2, - EVEX_W_0F3868_P_3, EVEX_W_0F3871_P_2, EVEX_W_0F3873_P_2, - EVEX_W_0F3A50_P_2, EVEX_W_0F3A51_P_2, EVEX_W_0F3A56_P_2, - EVEX_W_0F3A57_P_2, EVEX_W_0F3A66_P_2, EVEX_W_0F3A67_P_2, - EVEX_W_0F3A71_P_2, EVEX_W_0F3A73_P_2): Delete. - (putop): Centralize management of last[]. Delete SAVE_LAST. - * i386-dis-evex-w.h: Move entries for opcodes 0F3838, 0F3839, - 0F3840, 0F3855, 0F3868, 0F3871, 0F3873, 0F3A50, 0F3A51, 0F3A56, - 0F3A57, 0F3A66, 0F3A67, 0F3A71, and 0F3A73 ... - * i386-dis-evex-prefix.h: here. - -2020-07-06 Jan Beulich - - * i386-dis.c (MOD_EVEX_0F381A_P_2_W_0, MOD_EVEX_0F381A_P_2_W_1, - MOD_EVEX_0F381B_P_2_W_0, MOD_EVEX_0F381B_P_2_W_1, - MOD_EVEX_0F385A_P_2_W_0, MOD_EVEX_0F385A_P_2_W_1, - MOD_EVEX_0F385B_P_2_W_0, MOD_EVEX_0F385B_P_2_W_1): New - enumerators. - (EVEX_LEN_0F381A_P_2_W_0, EVEX_LEN_0F381A_P_2_W_1, - EVEX_LEN_0F381B_P_2_W_0, EVEX_LEN_0F381B_P_2_W_1, - EVEX_LEN_0F385A_P_2_W_0, EVEX_LEN_0F385A_P_2_W_1, - EVEX_LEN_0F385B_P_2_W_0, EVEX_LEN_0F385B_P_2_W_1): Rename to ... - (EVEX_LEN_0F381A_P_2_W_0_M_0, EVEX_LEN_0F381A_P_2_W_1_M_0, - EVEX_LEN_0F381B_P_2_W_0_M_0, EVEX_LEN_0F381B_P_2_W_1_M_0, - EVEX_LEN_0F385A_P_2_W_0_M_0, EVEX_LEN_0F385A_P_2_W_1_M_0, - EVEX_LEN_0F385B_P_2_W_0_M_0, EVEX_LEN_0F385B_P_2_W_1_M_0): ... - these, respectively. - * i386-dis-evex-len.h: Adjust comments. - * i386-dis-evex-mod.h: New MOD_EVEX_0F381A_P_2_W_0, - MOD_EVEX_0F381A_P_2_W_1, MOD_EVEX_0F381B_P_2_W_0, - MOD_EVEX_0F381B_P_2_W_1, MOD_EVEX_0F385A_P_2_W_0, - MOD_EVEX_0F385A_P_2_W_1, MOD_EVEX_0F385B_P_2_W_0, and - MOD_EVEX_0F385B_P_2_W_1 table entries. - * i386-dis-evex-w.h: Reference mod_table[] for - EVEX_W_0F381A_P_2, EVEX_W_0F381B_P_2, EVEX_W_0F385A_P_2, and - EVEX_W_0F385B_P_2. - -2020-07-06 Jan Beulich - - * i386-dis-evex-len.h (vbroadcastf32x8, vbroadcasti32x8, - vinsertf32x8, vinsertf64x4, vextractf32x8, vextractf64x4): Use - EXymm. - (vinserti32x8, vinserti64x4, vextracti32x8, vextracti64x4): - Likewise. Mark 256-bit entries invalid. - -2020-07-06 Jan Beulich - - * i386-dis.c (PREFIX_EVEX_0F62, PREFIX_EVEX_0F6A, - PREFIX_EVEX_0F6B, PREFIX_EVEX_0F6C, PREFIX_EVEX_0F6D, - PREFIX_EVEX_0FD2, PREFIX_EVEX_0FD3, PREFIX_EVEX_0FD4, - PREFIX_EVEX_0FF2, PREFIX_EVEX_0FF3, PREFIX_EVEX_0FF4, - PREFIX_EVEX_0FFA, PREFIX_EVEX_0FFB, PREFIX_EVEX_0FFE, - PREFIX_EVEX_0F382B): Delete. - (EVEX_W_0F62_P_2, EVEX_W_0F6A_P_2, EVEX_W_0F6B_P_2, - EVEX_W_0F6C_P_2, EVEX_W_0F6D_P_2, EVEX_W_0FD2_P_2, - EVEX_W_0FD3_P_2, EVEX_W_0FD4_P_2, EVEX_W_0FF2_P_2, - EVEX_W_0FF3_P_2, EVEX_W_0FF4_P_2, EVEX_W_0FFA_P_2, - EVEX_W_0FFB_P_2, EVEX_W_0FFE_P_2, EVEX_W_0F382B_P_2): Rename - to ... - (EVEX_W_0F62, EVEX_W_0F6A, EVEX_W_0F6B, EVEX_W_0F6C, - EVEX_W_0F6D, EVEX_W_0FD2, EVEX_W_0FD3, EVEX_W_0FD4, - EVEX_W_0FF2, EVEX_W_0FF3, EVEX_W_0FF4, EVEX_W_0FFA, - EVEX_W_0FFB, EVEX_W_0FFE, EVEX_W_0F382B): ... these - respectively. - * i386-dis-evex.h (evex_table): Reference VEX_W table entries - for opcodes 0F62, 0F6A, 0F6B, 0F6C, 0F6D, 0FD2, 0FD3, 0FD4, - 0FF2, 0FF3, 0FF4, 0FFA, 0FFB, 0FFE, 0F382B. - * i386-dis-evex-prefix.h (PREFIX_EVEX_0F62, PREFIX_EVEX_0F6A, - PREFIX_EVEX_0F6B, PREFIX_EVEX_0F6C, PREFIX_EVEX_0F6D, - PREFIX_EVEX_0FD2, PREFIX_EVEX_0FD3, PREFIX_EVEX_0FD4, - PREFIX_EVEX_0FF2, PREFIX_EVEX_0FF3, PREFIX_EVEX_0FF4, - PREFIX_EVEX_0FFA, PREFIX_EVEX_0FFB, PREFIX_EVEX_0FFE, - PREFIX_EVEX_0F382B): Remove table entries. - * i386-dis-evex-w.h: Reference VEX table entries for opcodes - 0F62, 0F6A, 0F6B, 0F6C, 0F6D, 0FD2, 0FD3, 0FD4, 0FF2, 0FF3, - 0FF4, 0FFA, 0FFB, 0FFE, 0F382B. - -2020-07-06 Jan Beulich - - * i386-dis.c (EVEX_LEN_0F3816_P_2, EVEX_LEN_0F3836_P_2, - EVEX_LEN_0F3A00_P_2_W_1, EVEX_LEN_0F3A01_P_2_W_1): New - enumerators. - * i386-dis-evex-len.h (evex_len_table): New EVEX_LEN_0F3816_P_2, - EVEX_LEN_0F3836_P_2, EVEX_LEN_0F3A00_P_2_W_1, and - EVEX_LEN_0F3A01_P_2_W_1 table entries. - * i386-dis-evex-prefix.h, i386-dis-evex-w.h: Reference the above - entries. - -2020-07-06 Jan Beulich - - * i386-dis.c (EVEX_LEN_0FC4_P_2, EVEX_LEN_0FC5_P_2, - EVEX_LEN_0F3A14_P_2, EVEX_LEN_0F3A15_P_2, EVEX_LEN_0F3A16_P_2, - EVEX_LEN_0F3A17_P_2, EVEX_LEN_0F3A20_P_2, - EVEX_LEN_0F3A21_P_2_W_0, EVEX_LEN_0F3A22_P_2): New enumerators. - * i386-dis-evex-len.h (evex_len_table): New EVEX_LEN_0FC4_P_2, - EVEX_LEN_0FC5_P_2, EVEX_LEN_0F3A14_P_2, EVEX_LEN_0F3A15_P_2, - EVEX_LEN_0F3A16_P_2, EVEX_LEN_0F3A17_P_2, EVEX_LEN_0F3A20_P_2, - EVEX_LEN_0F3A21_P_2_W_0, and EVEX_LEN_0F3A22_P_2 table entries. - * i386-dis-evex-prefix.h, i386-dis-evex-w.h: Reference the above - entries. - -2020-07-06 Jan Beulich - - * i386-dis.c (PREFIX_EVEX_0F3A1D, EVEX_W_0F3A1D_P_2): Delete. - (VEX_W_0F3813_P_2, VEX_W_0F3A1D_P_2): New enumerators. - (prefix_table): Reference VEX_W_0F3813_P_2 and VEX_W_0F3A1D_P_2 - respectively. - (vex_w_table): New VEX_W_0F3813_P_2 and VEX_W_0F3A1D_P_2 table - entries. - * i386-dis-evex.h (evex_table): Reference VEX table entry for - opcode 0F3A1D. - * i386-dis-evex-prefix.h (PREFIX_EVEX_0F3A1D): Delete table - entry. - * i386-dis-evex-w.h (EVEX_W_0F3A1D_P_2): Likewise. - -2020-07-06 Jan Beulich - - * i386-dis.c (PREFIX_EVEX_0F60, PREFIX_EVEX_0F61, - PREFIX_EVEX_0F63, PREFIX_EVEX_0F67, PREFIX_EVEX_0F68, - PREFIX_EVEX_0F69, PREFIX_EVEX_0FD1, PREFIX_EVEX_0FD5, - PREFIX_EVEX_0FD8, PREFIX_EVEX_0FD9, PREFIX_EVEX_0FDA, - PREFIX_EVEX_0FDC, PREFIX_EVEX_0FDD, PREFIX_EVEX_0FDE, - PREFIX_EVEX_0FE0, PREFIX_EVEX_0FE1, PREFIX_EVEX_0FE3, - PREFIX_EVEX_0FE4, PREFIX_EVEX_0FE5, PREFIX_EVEX_0FE8, - PREFIX_EVEX_0FE9, PREFIX_EVEX_0FEA, PREFIX_EVEX_0FEC, - PREFIX_EVEX_0FED, PREFIX_EVEX_0FEE, PREFIX_EVEX_0FF1, - PREFIX_EVEX_0FF5, PREFIX_EVEX_0FF6, PREFIX_EVEX_0FF8, - PREFIX_EVEX_0FF9, PREFIX_EVEX_0FFC, PREFIX_EVEX_0FFD, - PREFIX_EVEX_0F3800, PREFIX_EVEX_0F3804, PREFIX_EVEX_0F380B, - PREFIX_EVEX_0F380C, PREFIX_EVEX_0F3818, PREFIX_EVEX_0F381C, - PREFIX_EVEX_0F381D, PREFIX_EVEX_0F383C, PREFIX_EVEX_0F383E, - PREFIX_EVEX_0F3858, PREFIX_EVEX_0F3878, PREFIX_EVEX_0F3879, - PREFIX_EVEX_0F3896, PREFIX_EVEX_0F3897, PREFIX_EVEX_0F3898, - PREFIX_EVEX_0F3899, PREFIX_EVEX_0F389C, PREFIX_EVEX_0F389D, - PREFIX_EVEX_0F389E, PREFIX_EVEX_0F389F, PREFIX_EVEX_0F38A6, - PREFIX_EVEX_0F38A7, PREFIX_EVEX_0F38A8, PREFIX_EVEX_0F38A9, - PREFIX_EVEX_0F38AC, PREFIX_EVEX_0F38AD, PREFIX_EVEX_0F38AE, - PREFIX_EVEX_0F38AF, PREFIX_EVEX_0F38B6, PREFIX_EVEX_0F38B7, - PREFIX_EVEX_0F38B8, PREFIX_EVEX_0F38B9, PREFIX_EVEX_0F38BA, - PREFIX_EVEX_0F38BB, PREFIX_EVEX_0F38BC, PREFIX_EVEX_0F38BD, - PREFIX_EVEX_0F38BE, PREFIX_EVEX_0F38BF, PREFIX_EVEX_0F38CF, - PREFIX_EVEX_0F38DC, PREFIX_EVEX_0F38DD, PREFIX_EVEX_0F38DE, - PREFIX_EVEX_0F38DF, PREFIX_EVEX_0F3A04, PREFIX_EVEX_0F3A0F, - PREFIX_EVEX_0F3A44, PREFIX_EVEX_0F3ACE, PREFIX_EVEX_0F3ACF, - EVEX_W_0F380C_P_2, EVEX_W_0F3818_P_2, EVEX_W_0F3858_P_2, - EVEX_W_0F3878_P_2, EVEX_W_0F3879_P_2, EVEX_W_0F3A04_P_2, - EVEX_W_0F3ACE_P_2, EVEX_W_0F3ACF_P_2): Delete. - (prefix_table): Add EXxEVexR to FMA table entries. - (OP_Rounding): Move abort() invocation. - * i386-dis-evex.h (evex_table): Reference VEX table for opcodes - 0F60, 0F61, 0F63, 0F67, 0F68, 0F69, 0FD1, 0FD5, 0FD8, 0FD9, - 0FDA, 0FDC, 0FDD, 0FDE, 0FE0, 0FE1, 0FE3, 0FE4, 0FE5, 0FE8, - 0FE9, 0FEA, 0FEC, 0FED, 0FEE, 0FF1, 0FF5, 0FF6, 0FF8, 0FF9, - 0FFC, 0FFD, 0F3800, 0F3804, 0F380B, 0F380C, 0F3818, 0F381C, - 0F381D, 0F383C, 0F383E, 0F3858, 0F3878, 0F3879, 0F3896, 0F3897, - 0F3898, 0F3899, 0F389C, 0F389D, 0F389E, 0F389F, 0F38A6, 0F38A7, - 0F38A8, 0F38A9, 0F38AC, 0F38AD, 0F38AE, 0F38AF, 0F38B6, 0F38B7, - 0F38B8, 0F38B9, 0F38BA, 0F38BB, 0F38BC, 0F38BD, 0F38BE, 0F38BF, - 0F38CF, 0F38DC, 0F38DD, 0F38DE, 0F38DF, 0F3A04, 0F3A0F, 0F3A44, - 0F3ACE, 0F3ACF. - * i386-dis-evex-prefix.h (PREFIX_EVEX_0F60, PREFIX_EVEX_0F61, - PREFIX_EVEX_0F63, PREFIX_EVEX_0F67, PREFIX_EVEX_0F68, - PREFIX_EVEX_0F69, PREFIX_EVEX_0FD1, PREFIX_EVEX_0FD5, - PREFIX_EVEX_0FD8, PREFIX_EVEX_0FD9, PREFIX_EVEX_0FDA, - PREFIX_EVEX_0FDC, PREFIX_EVEX_0FDD, PREFIX_EVEX_0FDE, - PREFIX_EVEX_0FE0, PREFIX_EVEX_0FE1, PREFIX_EVEX_0FE3, - PREFIX_EVEX_0FE4, PREFIX_EVEX_0FE5, PREFIX_EVEX_0FE8, - PREFIX_EVEX_0FE9, PREFIX_EVEX_0FEA, PREFIX_EVEX_0FEC, - PREFIX_EVEX_0FED, PREFIX_EVEX_0FEE, PREFIX_EVEX_0FF1, - PREFIX_EVEX_0FF5, PREFIX_EVEX_0FF6, PREFIX_EVEX_0FF8, - PREFIX_EVEX_0FF9, PREFIX_EVEX_0FFC, PREFIX_EVEX_0FFD, - PREFIX_EVEX_0F3800, PREFIX_EVEX_0F3804, PREFIX_EVEX_0F380B, - PREFIX_EVEX_0F380C, PREFIX_EVEX_0F3818, PREFIX_EVEX_0F381C, - PREFIX_EVEX_0F381D, PREFIX_EVEX_0F383C, PREFIX_EVEX_0F383E, - PREFIX_EVEX_0F3858, PREFIX_EVEX_0F3878, PREFIX_EVEX_0F3879, - PREFIX_EVEX_0F3896, PREFIX_EVEX_0F3897, PREFIX_EVEX_0F3898, - PREFIX_EVEX_0F3899, PREFIX_EVEX_0F389C, PREFIX_EVEX_0F389D, - PREFIX_EVEX_0F389E, PREFIX_EVEX_0F389F, PREFIX_EVEX_0F38A6, - PREFIX_EVEX_0F38A7, PREFIX_EVEX_0F38A8, PREFIX_EVEX_0F38A9, - PREFIX_EVEX_0F38AC, PREFIX_EVEX_0F38AD, PREFIX_EVEX_0F38AE, - PREFIX_EVEX_0F38AF, PREFIX_EVEX_0F38B6, PREFIX_EVEX_0F38B7, - PREFIX_EVEX_0F38B8, PREFIX_EVEX_0F38B9, PREFIX_EVEX_0F38BA, - PREFIX_EVEX_0F38BB, PREFIX_EVEX_0F38BC, PREFIX_EVEX_0F38BD, - PREFIX_EVEX_0F38BE, PREFIX_EVEX_0F38BF, PREFIX_EVEX_0F38CF, - PREFIX_EVEX_0F38DC, PREFIX_EVEX_0F38DD, PREFIX_EVEX_0F38DE, - PREFIX_EVEX_0F38DF, PREFIX_EVEX_0F3A04, PREFIX_EVEX_0F3A0F, - PREFIX_EVEX_0F3A44, PREFIX_EVEX_0F3ACE, PREFIX_EVEX_0F3ACF): - Delete table entries. - * i386-dis-evex-w.h (EVEX_W_0F380C_P_2, EVEX_W_0F3818_P_2, - EVEX_W_0F3858_P_2, EVEX_W_0F3878_P_2, EVEX_W_0F3879_P_2, - EVEX_W_0F3A04_P_2, EVEX_W_0F3ACE_P_2, EVEX_W_0F3ACF_P_2): - Likewise. - -2020-07-06 Jan Beulich - - * i386-dis.c (EXqScalarS): Delete. - (vex_len_table): Replace EXqScalarS by EXqVexScalarS. - * i386-dis-evex-w.h (vmovq): Use EXqVexScalarS. - -2020-07-06 Jan Beulich - - * i386-dis.c (safe-ctype.h): Include. - (EXdScalar, EXqScalar): Delete. - (d_scalar_mode, q_scalar_mode): Delete. - (prefix_table, vex_len_table): Use EXxmm_md in place of - EXdScalar and EXxmm_mq in place of EXqScalar. - (intel_operand_size, OP_E_memory, OP_EX): Remove uses of - d_scalar_mode and q_scalar_mode. - * i386-dis-evex-w.h (vmovss): Use EXxmm_md. - (vmovsd): Use EXxmm_mq. - -2020-07-06 Yuri Chornoivan - - PR 26204 - * arc-dis.c: Fix spelling mistake. - * po/opcodes.pot: Regenerate. - -2020-07-06 Nick Clifton - - * po/pt_BR.po: Updated Brazilian Portugugese translation. - * po/uk.po: Updated Ukranian translation. - -2020-07-04 Nick Clifton - - * configure: Regenerate. - * po/opcodes.pot: Regenerate. - -2020-07-04 Nick Clifton - - Binutils 2.35 branch created. - -2020-07-02 H.J. Lu - - * i386-gen.c (opcode_modifiers): Add VexSwapSources. - * i386-opc.h (VexSwapSources): New. - (i386_opcode_modifier): Add vexswapsources. - * i386-opc.tbl: Add VexSwapSources to BMI2 and BMI instructions - with two source operands swapped. - * i386-tbl.h: Regenerated. - -2020-06-30 Nelson Chu - - * riscv-dis.c (print_insn_args, case 'E'): Updated. Let the - unprivileged CSR can also be initialized. - -2020-06-29 Alan Modra - - * arm-dis.c: Use C style comments. - * cr16-opc.c: Likewise. - * ft32-dis.c: Likewise. - * moxie-opc.c: Likewise. - * tic54x-dis.c: Likewise. - * s12z-opc.c: Remove useless comment. - * xgate-dis.c: Likewise. - -2020-06-26 H.J. Lu - - * i386-opc.tbl: Add a blank line. - -2020-06-26 H.J. Lu - - * i386-gen.c (opcode_modifiers): Replace VecSIB with SIB. - (VecSIB128): Renamed to ... - (VECSIB128): This. - (VecSIB256): Renamed to ... - (VECSIB256): This. - (VecSIB512): Renamed to ... - (VECSIB512): This. - (VecSIB): Renamed to ... - (SIB): This. - (i386_opcode_modifier): Replace vecsib with sib. - * i386-opc.tbl (VecSIB128): New. - (VecSIB256): Likewise. - (VecSIB512): Likewise. - Replace VecSIB=1, VecSIB=2 and VecSIB=3 with VecSIB128, VecSIB256 - and VecSIB512, respectively. - -2020-06-26 Jan Beulich - - * i386-dis.c: Adjust description of I macro. - (x86_64_table): Drop use of I. - (float_mem): Replace use of I. - (putop): Remove handling of I. Adjust setting/clearing of "alt". - -2020-06-26 Jan Beulich - - * i386-dis.c: (print_insn): Avoid straight assignment to - priv.orig_sizeflag when processing -M sub-options. - -2020-06-25 Jan Beulich - - * i386-dis.c: Adjust description of J macro. - (dis386, x86_64_table, mod_table): Replace J. - (putop): Remove handling of J. - -2020-06-25 Jan Beulich - - * i386-dis.c: (float_mem): Reduce alternatives for fstpt and fldpt. - -2020-06-25 Jan Beulich - - * i386-dis.c: Adjust description of "LQ" macro. - (dis386_twobyte): Use LQ for sysret. - (putop): Adjust handling of LQ. - -2020-06-22 Nelson Chu - - * riscv-opc.c: Move the structures and functions to bfd/elfxx-riscv.c. - * riscv-dis.c: Include elfxx-riscv.h. - -2020-06-18 H.J. Lu - - * i386-dis.c (prefix_table): Revert the last vmgexit change. - -2020-06-17 Lili Cui - - * i386-dis.c (prefix_table): Delete the incorrect vmgexit. - -2020-06-14 H.J. Lu - - PR gas/26115 - * i386-dis.c (prefix_table): Replace xsuspldtrk with xsusldtrk. - * i386-opc.tbl: Likewise. - * i386-tbl.h: Regenerated. - -2020-06-12 Nelson Chu - - * riscv-opc.c (priv_specs): Remove v1.9 and PRIV_SPEC_CLASS_1P9. - -2020-06-11 Alex Coplan - - * aarch64-opc.c (SYSREG): New macro for describing system registers. - (SR_CORE): Likewise. - (SR_FEAT): Likewise. - (SR_RNG): Likewise. - (SR_V8_1): Likewise. - (SR_V8_2): Likewise. - (SR_V8_3): Likewise. - (SR_V8_4): Likewise. - (SR_PAN): Likewise. - (SR_RAS): Likewise. - (SR_SSBS): Likewise. - (SR_SVE): Likewise. - (SR_ID_PFR2): Likewise. - (SR_PROFILE): Likewise. - (SR_MEMTAG): Likewise. - (SR_SCXTNUM): Likewise. - (aarch64_sys_regs): Refactor to store feature information in the table. - (aarch64_sys_reg_supported_p): Collapse logic for system registers - that now describe their own features. - (aarch64_pstatefield_supported_p): Likewise. - -2020-06-09 H.J. Lu - - * i386-dis.c (prefix_table): Fix a typo in comments. - -2020-06-09 Jan Beulich - - * i386-dis.c (rex_ignored): Delete. - (ckprefix): Drop rex_ignored initialization. - (get_valid_dis386): Drop setting of rex_ignored. - (print_insn): Drop checking of rex_ignored. Don't record data - size prefix as used with VEX-and-alike encodings. - -2020-06-09 Jan Beulich - - * i386-dis.c (MOD_0F12_PREFIX_2, MOD_0F16_PREFIX_2, - MOD_VEX_0F12_PREFIX_2, MOD_VEX_0F16_PREFIX_2): New enumerators. - (VEX_LEN_0F12_P_2, VEX_LEN_0F16_P_2): Delete. - (VEX_LEN_0F12_P_2_M_0, VEX_LEN_0F16_P_2_M_0): Define. - (prefix_table): Decode MOD for cases 2 of opcodes 0F12, 0F16, - VEX_0F12, and VEX_0F16. - (vex_len_table): Use X for vmovlp* and vmovh*s. Drop - VEX_LEN_0F12_P_2 and VEX_LEN_0F16_P_2 entries. - (mod_table): Use X for movlpX and movhpX. Drop PREFIX_OPCODE - from movlps and movhlps. New MOD_0F12_PREFIX_2, - MOD_0F16_PREFIX_2, MOD_VEX_0F12_PREFIX_2, and - MOD_VEX_0F16_PREFIX_2 entries. - -2020-06-09 Jan Beulich - - * i386-dis.c (MOD_EVEX_0F12_PREFIX_2, MOD_EVEX_0F13, - MOD_EVEX_0F16_PREFIX_2, MOD_EVEX_0F17, MOD_EVEX_0F2B): New enumerators. - (PREFIX_EVEX_0F13, PREFIX_EVEX_0F14, PREFIX_EVEX_0F15, - PREFIX_EVEX_0F17, PREFIX_EVEX_0F28, PREFIX_EVEX_0F29, - PREFIX_EVEX_0F2B, PREFIX_EVEX_0F54, PREFIX_EVEX_0F55, - PREFIX_EVEX_0F56, PREFIX_EVEX_0F57, PREFIX_EVEX_0FC6, - EVEX_W_0F10_P_0, EVEX_W_0F10_P_2, EVEX_W_0F11_P_0, - EVEX_W_0F11_P_2, EVEX_W_0F12_P_0_M_0, EVEX_W_0F12_P_2, - EVEX_W_0F13_P_0, EVEX_W_0F13_P_2, EVEX_W_0F14_P_0, - EVEX_W_0F14_P_2, EVEX_W_0F15_P_0, EVEX_W_0F15_P_2, - EVEX_W_0F16_P_0_M_0, EVEX_W_0F16_P_2, EVEX_W_0F17_P_0, - EVEX_W_0F17_P_2, EVEX_W_0F28_P_0, EVEX_W_0F28_P_2, - EVEX_W_0F29_P_0, EVEX_W_0F29_P_2, EVEX_W_0F2B_P_0, - EVEX_W_0F2B_P_2, EVEX_W_0F2E_P_0, EVEX_W_0F2E_P_2, - EVEX_W_0F2F_P_0, EVEX_W_0F2F_P_2, EVEX_W_0F51_P_0, - EVEX_W_0F51_P_2, EVEX_W_0F54_P_0, EVEX_W_0F54_P_2, - EVEX_W_0F55_P_0, EVEX_W_0F55_P_2, EVEX_W_0F56_P_0, - EVEX_W_0F56_P_2, EVEX_W_0F57_P_0, EVEX_W_0F57_P_2, - EVEX_W_0F58_P_0, EVEX_W_0F58_P_2, EVEX_W_0F59_P_0, - EVEX_W_0F59_P_2, EVEX_W_0F5C_P_0, EVEX_W_0F5C_P_2, - EVEX_W_0F5D_P_0, EVEX_W_0F5D_P_2, EVEX_W_0F5E_P_0, - EVEX_W_0F5E_P_2, EVEX_W_0F5F_P_0, EVEX_W_0F5F_P_2, - EVEX_W_0FC2_P_0, EVEX_W_0FC2_P_2, EVEX_W_0FC6_P_0, - EVEX_W_0FC6_P_2): Delete. - (print_insn): Add EVEX.W vs embedded prefix consistency check - to prefix validation. - * i386-dis-evex.h (evex_table): Don't further descend for - vunpcklpX, vunpckhpX, vmovapX, vandpX, vandnpX, vorpX, vxorpX, - and vshufpX. Continue with MOD decoding for opcodes 0F13, 0F17, - and 0F2B. - * i386-dis-evex-mod.h: Add/adjust vmovlpX/vmovhpX entries. - * i386-dis-evex-prefix.h: Don't further descend for vmovupX, - vucomisX, vcomisX, vsqrtpX, vaddpX, vmulpX, vsubpX, vminpX, - vdivpX, vmaxpX, and vcmppX. Continue with MOD decoding for cases - 2 of PREFIX_EVEX_0F12, PREFIX_EVEX_0F16, and PREFIX_EVEX_0F29. - Drop PREFIX_EVEX_0F13, PREFIX_EVEX_0F14, PREFIX_EVEX_0F15, - PREFIX_EVEX_0F17, PREFIX_EVEX_0F28, PREFIX_EVEX_0F2B, - PREFIX_EVEX_0F54, PREFIX_EVEX_0F55, PREFIX_EVEX_0F56, - PREFIX_EVEX_0F57, and PREFIX_EVEX_0FC6 entries. - * i386-dis-evex-w.h: Drop EVEX_W_0F10_P_0, EVEX_W_0F10_P_2, - EVEX_W_0F11_P_0, EVEX_W_0F11_P_2, EVEX_W_0F12_P_0_M_0, - EVEX_W_0F12_P_2, EVEX_W_0F12_P_3, EVEX_W_0F13_P_0, - EVEX_W_0F13_P_2, EVEX_W_0F14_P_0, EVEX_W_0F14_P_2, - EVEX_W_0F15_P_0, EVEX_W_0F15_P_2, EVEX_W_0F16_P_0_M_0, - EVEX_W_0F16_P_2, EVEX_W_0F17_P_0, EVEX_W_0F17_P_2, - EVEX_W_0F28_P_0, EVEX_W_0F28_P_2, EVEX_W_0F29_P_0, - EVEX_W_0F29_P_2, EVEX_W_0F2B_P_0, EVEX_W_0F2B_P_2, - EVEX_W_0F2E_P_0, EVEX_W_0F2E_P_2, EVEX_W_0F2F_P_0, - EVEX_W_0F2F_P_2, EVEX_W_0F51_P_0, EVEX_W_0F51_P_2, - EVEX_W_0F54_P_0, EVEX_W_0F54_P_2, EVEX_W_0F55_P_0, - EVEX_W_0F55_P_2, EVEX_W_0F56_P_0, EVEX_W_0F56_P_2, - EVEX_W_0F57_P_0, EVEX_W_0F57_P_2, EVEX_W_0F58_P_0, - EVEX_W_0F58_P_2, EVEX_W_0F59_P_0, EVEX_W_0F59_P_2, - EVEX_W_0F5C_P_0, EVEX_W_0F5C_P_2, EVEX_W_0F5D_P_0, - EVEX_W_0F5D_P_2, EVEX_W_0F5E_P_0, EVEX_W_0F5E_P_2, - EVEX_W_0F5F_P_0, EVEX_W_0F5F_P_2, EVEX_W_0FC2_P_0, - EVEX_W_0FC2_P_2, EVEX_W_0FC6_P_0, and EVEX_W_0FC6_P_2 entries. - -2020-06-09 Jan Beulich - - * i386-dis.c (vex_table): Use PREFIX_OPCODE for vunpcklpX, - vunpckhpX, vmovapX, vandpX, vandnpX, vorpX, vxorpX and vshufpX. - (vex_len_table) : Likewise for vmovlpX, vmovhpX, vmovntpX, and - vmovmskpX. - (print_insn): Drop pointless check against bad_opcode. Split - prefix validation into legacy and VEX-and-alike parts. - (putop): Re-work 'X' macro handling. - -2020-06-09 Jan Beulich - - * i386-dis.c (MOD_0F51): Rename to ... - (MOD_0F50): ... this. - -2020-06-08 Alex Coplan - - * arm-dis.c (arm_opcodes): Add dfb. - (thumb32_opcodes): Add dfb. - -2020-06-08 Jan Beulich - - * i386-opc.h (reg_entry): Const-qualify reg_name field. - -2020-06-06 Alan Modra - - * ppc-dis.c (ppc_opts): Accept -mpwr10/-Mpwr10. - -2020-06-05 Alan Modra - - * cgen-dis.c (hash_insn_array): Increase size of buf. Assert - size is large enough. - -2020-06-04 Jose E. Marchesi - - * disassemble.c (disassemble_init_for_target): Set endian_code for - bpf targets. - * bpf-desc.c: Regenerate. - * bpf-opc.c: Likewise. - * bpf-dis.c: Likewise. - -2020-06-03 Jose E. Marchesi - - * cgen-opc.c (cgen_get_insn_value): Get an `endian' argument. - (cgen_put_insn_value): Likewise. - (cgen_lookup_insn): Pass endianness to cgen_{get,put}_insn_value. - * cgen-dis.in (print_insn): Likewise. - * cgen-ibld.in (insert_1): Likewise. - (insert_1): Likewise. - (insert_insn_normal): Likewise. - (extract_1): Likewise. - * bpf-dis.c: Regenerate. - * bpf-ibld.c: Likewise. - * bpf-ibld.c: Likewise. - * cgen-dis.in: Likewise. - * cgen-ibld.in: Likewise. - * cgen-opc.c: Likewise. - * epiphany-dis.c: Likewise. - * epiphany-ibld.c: Likewise. - * fr30-dis.c: Likewise. - * fr30-ibld.c: Likewise. - * frv-dis.c: Likewise. - * frv-ibld.c: Likewise. - * ip2k-dis.c: Likewise. - * ip2k-ibld.c: Likewise. - * iq2000-dis.c: Likewise. - * iq2000-ibld.c: Likewise. - * lm32-dis.c: Likewise. - * lm32-ibld.c: Likewise. - * m32c-dis.c: Likewise. - * m32c-ibld.c: Likewise. - * m32r-dis.c: Likewise. - * m32r-ibld.c: Likewise. - * mep-dis.c: Likewise. - * mep-ibld.c: Likewise. - * mt-dis.c: Likewise. - * mt-ibld.c: Likewise. - * or1k-dis.c: Likewise. - * or1k-ibld.c: Likewise. - * xc16x-dis.c: Likewise. - * xc16x-ibld.c: Likewise. - * xstormy16-dis.c: Likewise. - * xstormy16-ibld.c: Likewise. - -2020-06-04 Jose E. Marchesi - - * cgen-dis.in (cpu_desc_list): New field `insn_endian'. - (print_insn_): Handle instruction endian. - * bpf-dis.c: Regenerate. - * bpf-desc.c: Regenerate. - * epiphany-dis.c: Likewise. - * epiphany-desc.c: Likewise. - * fr30-dis.c: Likewise. - * fr30-desc.c: Likewise. - * frv-dis.c: Likewise. - * frv-desc.c: Likewise. - * ip2k-dis.c: Likewise. - * ip2k-desc.c: Likewise. - * iq2000-dis.c: Likewise. - * iq2000-desc.c: Likewise. - * lm32-dis.c: Likewise. - * lm32-desc.c: Likewise. - * m32c-dis.c: Likewise. - * m32c-desc.c: Likewise. - * m32r-dis.c: Likewise. - * m32r-desc.c: Likewise. - * mep-dis.c: Likewise. - * mep-desc.c: Likewise. - * mt-dis.c: Likewise. - * mt-desc.c: Likewise. - * or1k-dis.c: Likewise. - * or1k-desc.c: Likewise. - * xc16x-dis.c: Likewise. - * xc16x-desc.c: Likewise. - * xstormy16-dis.c: Likewise. - * xstormy16-desc.c: Likewise. - -2020-06-03 Nick Clifton - - * po/sr.po: Updated Serbian translation. - -2020-06-03 Nelson Chu - - * riscv-opc.c (riscv_get_isa_spec_class): Change bfd_boolean to int. - (riscv_get_priv_spec_class): Likewise. - -2020-06-01 Alan Modra - - * bpf-desc.c: Regenerate. - -2020-05-28 Jose E. Marchesi - David Faust - - * bpf-desc.c: Regenerate. - * bpf-opc.h: Likewise. - * bpf-opc.c: Likewise. - * bpf-dis.c: Likewise. - -2020-05-28 Alan Modra - - * nios2-dis.c (nios2_print_insn_arg): Avoid shift left of negative - values. - -2020-05-28 Alan Modra - - * ns32k-dis.c (print_insn_arg): Handle d value of 'f' for - immediates. - (print_insn_ns32k): Revert last change. - -2020-05-28 Nick Clifton - - * ns32k-dis.c (print_insn_ns32k): Change the arg_bufs array to - static. - -2020-05-26 Sandra Loosemore - - Fix extraction of signed constants in nios2 disassembler (again). - - * nios2-dis.c (nios2_print_insn_arg): Add explicit casts to - extractions of signed fields. - -2020-05-26 Stefan Schulze Frielinghaus - - * s390-opc.txt: Relocate vector load/store instructions with - additional alignment parameter and change architecture level - constraint from z14 to z13. - -2020-05-21 Alan Modra - - * arc-ext.c: Replace "if (x) free (x)" with "free (x)" throughout. - * sparc-dis.c: Likewise. - * tic4x-dis.c: Likewise. - * xtensa-dis.c: Likewise. - * bpf-desc.c: Regenerate. - * epiphany-desc.c: Regenerate. - * fr30-desc.c: Regenerate. - * frv-desc.c: Regenerate. - * ip2k-desc.c: Regenerate. - * iq2000-desc.c: Regenerate. - * lm32-desc.c: Regenerate. - * m32c-desc.c: Regenerate. - * m32r-desc.c: Regenerate. - * mep-asm.c: Regenerate. - * mep-desc.c: Regenerate. - * mt-desc.c: Regenerate. - * or1k-desc.c: Regenerate. - * xc16x-desc.c: Regenerate. - * xstormy16-desc.c: Regenerate. - -2020-05-20 Nelson Chu - - * riscv-opc.c (riscv_ext_version_table): The table used to store - all information about the supported spec and the corresponding ISA - versions. Currently, only Zicsr is supported to verify the - correctness of Z sub extension settings. Others will be supported - in the future patches. - (struct isa_spec_t, isa_specs): List for all supported ISA spec - classes and the corresponding strings. - (riscv_get_isa_spec_class): New function. Get the corresponding ISA - spec class by giving a ISA spec string. - * riscv-opc.c (struct priv_spec_t): New structure. - (struct priv_spec_t priv_specs): List for all supported privilege spec - classes and the corresponding strings. - (riscv_get_priv_spec_class): New function. Get the corresponding - privilege spec class by giving a spec string. - (riscv_get_priv_spec_name): New function. Get the corresponding - privilege spec string by giving a CSR version class. - * riscv-dis.c: Updated since DECLARE_CSR is changed. - * riscv-dis.c: Add new disassembler option -Mpriv-spec to dump the CSR - according to the chosen version. Build a hash table riscv_csr_hash to - store the valid CSR for the chosen pirv verison. Dump the direct - CSR address rather than it's name if it is invalid. - (parse_riscv_dis_option_without_args): New function. Parse the options - without arguments. - (parse_riscv_dis_option): Call parse_riscv_dis_option_without_args to - parse the options without arguments first, and then handle the options - with arguments. Add the new option -Mpriv-spec, which has argument. - * riscv-dis.c (print_riscv_disassembler_options): Add description - about the new OBJDUMP option. - -2020-05-19 Peter Bergner - - * ppc-opc.c (insert_ls, extract_ls): Handle 3-bit L fields and new - WC values on POWER10 sync, dcbf and wait instructions. - (insert_pl, extract_pl): New functions. - (L2OPT, LS, WC): Use insert_ls and extract_ls. - (LS3): New , 3-bit L for sync. - (LS3, L3OPT): New, 3-bit L for sync and dcbf. - (SC2, PL): New, 2-bit SC and PL for sync and wait. - (XWCPL_MASK, XL3RT_MASK, XSYNCLS_MASK): New instruction masks. - (XOPL3, XWCPL, XSYNCLS): New opcode macros. - (powerpc_opcodes) : New extended mnemonics. - : Enable PL operand on POWER10. - : Enable L3OPT operand on POWER10. - : Enable SC2 operand on POWER10. - -2020-05-19 Stafford Horne - - PR 25184 - * or1k-asm.c: Regenerate. - * or1k-desc.c: Regenerate. - * or1k-desc.h: Regenerate. - * or1k-dis.c: Regenerate. - * or1k-ibld.c: Regenerate. - * or1k-opc.c: Regenerate. - * or1k-opc.h: Regenerate. - * or1k-opinst.c: Regenerate. - -2020-05-11 Alan Modra - - * ppc-opc (powerpc_opcodes): Add xscmpeqqp, xscmpgeqp, xscmpgtqp, - xsmaxcqp, xsmincqp. - -2020-05-11 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Add lxvrbx, lxvrhx, lxvrwx, lxvrdx, - stxvrbx, stxvrhx, stxvrwx, stxvrdx. - -2020-05-11 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Add xvtlsbb. - -2020-05-11 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Add vstribl, vstribr, vstrihl, vstrihr, - vclrlb, vclrrb, vstribl., vstribr., vstrihl., vstrihr.. - -2020-05-11 Peter Bergner - - * ppc-opc.c (powerpc_opcodes) : New - mnemonics. - -2020-05-11 Alan Modra - - * ppc-opc.c (UIM8, P_U8XX4_MASK): Define. - (powerpc_opcodes): Add vgnb, vcfuged, vpextd, vpdepd, vclzdm, - vctzdm, cntlzdm, pdepd, pextd, cfuged, cnttzdm. - (prefix_opcodes): Add xxeval. - -2020-05-11 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Add xxgenpcvbm, xxgenpcvhm, - xxgenpcvwm, xxgenpcvdm. - -2020-05-11 Alan Modra - - * ppc-opc.c (MP, VXVAM_MASK): Define. - (VXVAPS_MASK): Use VXVA_MASK. - (powerpc_opcodes): Add mtvsrbmi, vexpandbm, vexpandhm, vexpandwm, - vexpanddm, vexpandqm, vextractbm, vextracthm, vextractwm, - vextractdm, vextractqm, mtvsrbm, mtvsrhm, mtvsrwm, mtvsrdm, mtvsrqm, - vcntmbb, vcntmbh, vcntmbw, vcntmbd. - -2020-05-11 Alan Modra - Peter Bergner - - * ppc-opc.c (insert_xa6a, extract_xa6a, insert_xb6a, extract_xb6a): - New functions. - (powerpc_operands): Define ACC, PMSK8, PMSK4, PMSK2, XMSK, YMSK, - YMSK2, XA6a, XA6ap, XB6a entries. - (PMMIRR, P_X_MASK, P_XX1_MASK, P_GER_MASK): Define - (P_GER2_MASK, P_GER4_MASK, P_GER8_MASK, P_GER64_MASK): Define. - (PPCVSX4): Define. - (powerpc_opcodes): Add xxmfacc, xxmtacc, xxsetaccz, - xvi8ger4pp, xvi8ger4, xvf16ger2pp, xvf16ger2, xvf32gerpp, xvf32ger, - xvi4ger8pp, xvi4ger8, xvi16ger2spp, xvi16ger2s, xvbf16ger2pp, - xvbf16ger2, xvf64gerpp, xvf64ger, xvi16ger2, xvf16ger2np, - xvf32gernp, xvi8ger4spp, xvi16ger2pp, xvbf16ger2np, xvf64gernp, - xvf16ger2pn, xvf32gerpn, xvbf16ger2pn, xvf64gerpn, xvf16ger2nn, - xvf32gernn, xvbf16ger2nn, xvf64gernn, xvcvbf16sp, xvcvspbf16. - (prefix_opcodes): Add pmxvi8ger4pp, pmxvi8ger4, pmxvf16ger2pp, - pmxvf16ger2, pmxvf32gerpp, pmxvf32ger, pmxvi4ger8pp, pmxvi4ger8, - pmxvi16ger2spp, pmxvi16ger2s, pmxvbf16ger2pp, pmxvbf16ger2, - pmxvf64gerpp, pmxvf64ger, pmxvi16ger2, pmxvf16ger2np, pmxvf32gernp, - pmxvi8ger4spp, pmxvi16ger2pp, pmxvbf16ger2np, pmxvf64gernp, - pmxvf16ger2pn, pmxvf32gerpn, pmxvbf16ger2pn, pmxvf64gerpn, - pmxvf16ger2nn, pmxvf32gernn, pmxvbf16ger2nn, pmxvf64gernn. - -2020-05-11 Alan Modra - - * ppc-opc.c (insert_imm32, extract_imm32): New functions. - (insert_xts, extract_xts): New functions. - (IMM32, UIM3, IX, UIM5, SH3, XTS, P8RR): Define. - (P_XX4_MASK, P_UXX4_MASK, VSOP, P_VS_MASK, P_VSI_MASK): Define. - (VXRC_MASK, VXSH_MASK): Define. - (powerpc_opcodes): Add vinsbvlx, vsldbi, vextdubvlx, vextdubvrx, - vextduhvlx, vextduhvrx, vextduwvlx, vextduwvrx, vextddvlx, - vextddvrx, vinshvlx, vinswvlx, vinsw, vinsbvrx, vinshvrx, - vinswvrx, vinsd, vinsblx, vsrdbi, vinshlx, vinswlx, vinsdlx, - vinsbrx, vinshrx, vinswrx, vinsdrx, lxvkq. - (prefix_opcodes): Add xxsplti32dx, xxspltidp, xxspltiw, xxblendvb, - xxblendvh, xxblendvw, xxblendvd, xxpermx. - -2020-05-11 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Add vrlq, vdivuq, vmsumcud, vrlqmi, - vmuloud, vcmpuq, vslq, vdivsq, vcmpsq, vrlqnm, vcmpequq, vmulosd, - vsrq, vdiveuq, vcmpgtuq, vmuleud, vsraq, vdivesq, vcmpgtsq, vmulesd, - vcmpequq., vextsd2q, vmoduq, vcmpgtuq., vmodsq, vcmpgtsq., xscvqpuqz, - xscvuqqp, xscvqpsqz, xscvsqqp, dcffixqq, dctfixqq. - -2020-05-11 Alan Modra - - * ppc-opc.c (insert_xtp, extract_xtp): New functions. - (XTP, DQXP, DQXP_MASK): Define. - (powerpc_opcodes): Add lxvp, stxvp, lxvpx, stxvpx. - (prefix_opcodes): Add plxvp and pstxvp. - -2020-05-11 Alan Modra - - * ppc-opc.c (powerpc_opcodes): Add vdivuw, vdivud, vdivsw, vmulld, - vdivsd, vmulhuw, vdiveuw, vmulhud, vdiveud, vmulhsw, vdivesw, - vmulhsd, vdivesd, vmoduw, vmodud, vmodsw, vmodsd. - -2020-05-11 Peter Bergner - - * ppc-opc.c (powerpc_opcodes) : New mnemonics. - -2020-05-11 Peter Bergner - - * ppc-opc.c (insert_l1opt, extract_l1opt): New functions. - (L1OPT): Define. - (powerpc_opcodes) : Add L operand for cpu POWER10. - -2020-05-11 Peter Bergner - - * ppc-opc.c (powerpc_opcodes) : Add variant with L operand. - -2020-05-11 Alan Modra - - * ppc-dis.c (powerpc_init_dialect): Default to "power10". - -2020-05-11 Alan Modra - - * ppc-dis.c (ppc_opts): Add "power10" entry. - (print_insn_powerpc): Update for PPC_OPCODE_POWER10 renaming. - * ppc-opc.c (POWER10): Rename from POWERXX. Update all uses. - -2020-05-11 Nick Clifton - - * po/fr.po: Updated French translation. - -2020-04-30 Alex Coplan - - * aarch64-opc.h (enum aarch64_field_kind): Add FLD_imm16_2. - * aarch64-opc.c (fields): Add entry for FLD_imm16_2. - (operand_general_constraint_met_p): validate - AARCH64_OPND_UNDEFINED. - * aarch64-tbl.h (aarch64_opcode_table): Add udf instruction, entry - for FLD_imm16_2. - * aarch64-asm-2.c: Regenerated. - * aarch64-dis-2.c: Regenerated. - * aarch64-opc-2.c: Regenerated. - -2020-04-29 Nick Clifton - - PR 22699 - * sh-opc.h: Also use unsigned 8-bit immediate values for the LDRC - and SETRC insns. - -2020-04-29 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2020-04-29 Nick Clifton - - PR 22699 - * sh-opc.h (IMM0_8): Replace with IMM0_8S and IMM0_8U. Use - IMM0_8S for arithmetic insns and IMM0_8U for logical insns. - * sh-dis.c (print_insn_sh): Change IMM0_8 case to IMM0_8S and add - IMM0_8U case. - -2020-04-21 Andreas Schwab - - PR 25848 - * m68k-opc.c (m68k_opcodes): Allow pc-rel for second operand of - cmpi only on m68020up and cpu32. - -2020-04-20 Sudakshina Das - - * aarch64-asm.c (aarch64_ins_none): New. - * aarch64-asm.h (ins_none): New declaration. - * aarch64-dis.c (aarch64_ext_none): New. - * aarch64-dis.h (ext_none): New declaration. - * aarch64-opc.c (aarch64_print_operand): Update case for - AARCH64_OPND_BARRIER_PSB. - * aarch64-tbl.h (aarch64_opcode_table): Add tsb. - (AARCH64_OPERANDS): Update inserter/extracter for - AARCH64_OPND_BARRIER_PSB to use new dummy functions. - * aarch64-asm-2.c: Regenerated. - * aarch64-dis-2.c: Regenerated. - * aarch64-opc-2.c: Regenerated. - -2020-04-20 Sudakshina Das - - * aarch64-tbl.h (aarch64_feature_bti, BTI, BTI_INSN): Remove. - (aarch64_feature_ras, RAS): Likewise. - (aarch64_feature_stat_profile, STAT_PROFILE): Likewise. - (aarch64_opcode_table): Update bti, xpaclri, pacia1716, pacib1716, - autia1716, autib1716, esb, psb, dgh, paciaz, paciasp, pacibz, pacibsp, - autiaz, autiasp, autibz, autibsp to be CORE_INSN. - * aarch64-asm-2.c: Regenerated. - * aarch64-dis-2.c: Regenerated. - * aarch64-opc-2.c: Regenerated. - -2020-04-17 Fredrik Strupe - - * arm-dis.c (neon_opcodes): Fix VDUP instruction masks. - (print_insn_neon): Support disassembly of conditional - instructions. - -2020-02-16 David Faust - - * bpf-desc.c: Regenerate. - * bpf-desc.h: Likewise. - * bpf-opc.c: Regenerate. - * bpf-opc.h: Likewise. - -2020-04-07 Lili Cui - - * i386-dis.c (enum): Add PREFIX_0F01_REG_5_MOD_3_RM_1, - (prefix_table): New instructions (see prefixes above). - (rm_table): Likewise - * i386-gen.c (cpu_flag_init): Add CPU_TSXLDTRK_FLAGS, - CPU_ANY_TSXLDTRK_FLAGS. - (cpu_flags): Add CpuTSXLDTRK. - * i386-opc.h (enum): Add CpuTSXLDTRK. - (i386_cpu_flags): Add cputsxldtrk. - * i386-opc.tbl: Add XSUSPLDTRK insns. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2020-04-02 Lili Cui - - * i386-dis.c (prefix_table): New instructions serialize. - * i386-gen.c (cpu_flag_init): Add CPU_SERIALIZE_FLAGS, - CPU_ANY_SERIALIZE_FLAGS. - (cpu_flags): Add CpuSERIALIZE. - * i386-opc.h (enum): Add CpuSERIALIZE. - (i386_cpu_flags): Add cpuserialize. - * i386-opc.tbl: Add SERIALIZE insns. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2020-03-26 Alan Modra - - * disassemble.h (opcodes_assert): Declare. - (OPCODES_ASSERT): Define. - * disassemble.c: Don't include assert.h. Include opintl.h. - (opcodes_assert): New function. - * h8300-dis.c (bfd_h8_disassemble_init): Use OPCODES_ASSERT. - (bfd_h8_disassemble): Reduce size of data array. Correctly - calculate maxlen. Omit insn decoding when insn length exceeds - maxlen. Exit from nibble loop when looking for E, before - accessing next data byte. Move processing of E outside loop. - Replace tests of maxlen in loop with assertions. - -2020-03-26 Alan Modra - - * arc-dis.c (find_format): Init needs_limm. Simplify use of limm. - -2020-03-25 Alan Modra - - * z80-dis.c (suffix): Init mybuf. - -2020-03-22 Alan Modra - - * h8300-dis.c (bfd_h8_disassemble): Limit data[] access to that - successflly read from section. - -2020-03-22 Alan Modra - - * arc-dis.c (find_format): Use ISO C string concatenation rather - than line continuation within a string. Don't access needs_limm - before testing opcode != NULL. - -2020-03-22 Alan Modra - - * ns32k-dis.c (print_insn_arg): Update comment. - (print_insn_ns32k): Reduce size of index_offset array, and - initialize, passing -1 to print_insn_arg for args that are not - an index. Don't exit arg loop early. Abort on bad arg number. - -2020-03-22 Alan Modra - - * s12z-dis.c (abstract_read_memory): Don't print error on EOI. - * s12z-opc.c: Formatting. - (operands_f): Return an int. - (opr_n_bytes_p1): Return -1 on reaching buffer memory limit. - (opr_n_bytes2, bfextins_n_bytes, mul_n_bytes, bm_n_bytes), - (shift_n_bytes, mov_imm_opr_n_bytes, loop_prim_n_bytes), - (exg_sex_discrim): Likewise. - (create_immediate_operand, create_bitfield_operand), - (create_register_operand_with_size, create_register_all_operand), - (create_register_all16_operand, create_simple_memory_operand), - (create_memory_operand, create_memory_auto_operand): Don't - segfault on malloc failure. - (z_ext24_decode): Return an int status, negative on fail, zero - on success. - (x_imm1, imm1_decode, trap_decode, z_opr_decode, z_opr_decode2), - (imm1234, reg_s_imm, reg_s_opr, z_imm1234_8base, z_imm1234_0base), - (z_tfr, z_reg, reg_xy, lea_reg_xys_opr, lea_reg_xys, rel_15_7), - (decode_rel_15_7, cmp_xy, sub_d6_x_y, sub_d6_y_x), - (ld_18bit_decode, mul_decode, bm_decode, bm_rel_decode), - (mov_imm_opr, ld_18bit_decode, exg_sex_decode), - (loop_primitive_decode, shift_decode, psh_pul_decode), - (bit_field_decode): Similarly. - (z_decode_signed_value, decode_signed_value): Similarly. Add arg - to return value, update callers. - (x_opr_decode_with_size): Check all reads, returning NULL on fail. - Don't segfault on NULL operand. - (decode_operation): Return OP_INVALID on first fail. - (decode_s12z): Check all reads, returning -1 on fail. - -2020-03-20 Alan Modra - - * metag-dis.c (print_insn_metag): Don't ignore status from - read_memory_func. - -2020-03-20 Alan Modra - - * nds32-dis.c (print_insn_nds32): Remove unnecessary casts. - Initialize parts of buffer not written when handling a possible - 2-byte insn at end of section. Don't attempt decoding of such - an insn by the 4-byte machinery. - -2020-03-20 Alan Modra - - * ppc-dis.c (print_insn_powerpc): Only clear needed bytes of - partially filled buffer. Prevent lookup of 4-byte insns when - only VLE 2-byte insns are possible due to section size. Print - ".word" rather than ".long" for 2-byte leftovers. - -2020-03-17 Sergey Belyashov - - PR 25641 - * z80-dis.c: Fix disassembling ED+A4/AC/B4/BC opcodes. - -2020-03-13 Jan Beulich - - * i386-dis.c (X86_64_0D): Rename to ... - (X86_64_0E): ... this. - -2020-03-09 H.J. Lu - - * Makefile.am ($(srcdir)/i386-init.h): Also pass -P to $(CPP). - * Makefile.in: Regenerated. - -2020-03-09 Jan Beulich - - * i386-opc.tbl (avx_irel): New. Use is for AVX512 vpcmp* - 3-operand pseudos. - * i386-tbl.h: Re-generate. - -2020-03-09 Jan Beulich - - * i386-opc.tbl (xop_elem, xop_irel, xop_sign): New. Use them for XOP vpcom*, - vprot*, vpsha*, and vpshl*. - * i386-tbl.h: Re-generate. - -2020-03-09 Jan Beulich - - * i386-opc.tbl (avx_frel): New. Use it for AVX/AVX512 vcmpps, - vcmpss, vcmppd, and vcmpsd 3-operand pseudo-ops. - * i386-tbl.h: Re-generate. - -2020-03-09 Jan Beulich - - * i386-gen.c (set_bitfield): Ignore zero-length field names. - * i386-opc.tbl (sse_frel): New. Use it for SSE/SSE2 cmpps, - cmpss, cmppd, and cmpsd 2-operand pseudo-ops. - * i386-tbl.h: Re-generate. - -2020-03-09 Jan Beulich - - * i386-gen.c (struct template_arg, struct template_instance, - struct template_param, struct template, templates, - parse_template, expand_templates): New. - (process_i386_opcodes): Various local variables moved to - expand_templates. Call parse_template and expand_templates. - * i386-opc.tbl (cc): New. Use it for Jcc, SETcc, and CMOVcc. - * i386-tbl.h: Re-generate. - -2020-03-06 Jan Beulich - - * i386-opc.tbl (vcvtdq2pd, vcvtps2pd, vcvtudq2pd, vcvtps2ph, - vcvtps2qq, vcvtps2uqq, vcvttps2qq, vcvttps2uqq): Fold separate - register and memory source templates. Replace VexW= by VexW* - where applicable. - * i386-tbl.h: Re-generate. - -2020-03-06 Jan Beulich - - * i386-opc.tbl: Drop IgnoreSize from various SIMD insns. Replace - VexW= by VexW* and VexVVVV=1 by just VexVVVV where applicable. - * i386-tbl.h: Re-generate. - -2020-03-06 Jan Beulich - - * i386-opc.tbl (fildll, fistpll, fisttpll): Add ATTSyntax. - * i386-tbl.h: Re-generate. - -2020-03-06 Jan Beulich - - * i386-opc.tbl (movq): Drop NoRex64 from XMM/XMM SSE2AVX variants. - (movmskps, pextrw, pinsrw, pmovmskb, movmskpd, extractps, - pextrb, pinsrb, roundsd): Drop NoRex64 and where applicable use - VexW0 on SSE2AVX variants. - (vmovq): Drop NoRex64 from XMM/XMM variants. - (vextractps, vmovmskpd, vmovmskps, vpextrb, vpextrw, vpinsrb, - vpinsrw, vpmovmskb, vroundsd, vpmovmskb): Drop NoRex64 and where - applicable use VexW0. - * i386-tbl.h: Re-generate. - -2020-03-06 Jan Beulich - - * i386-gen.c (opcode_modifiers): Remove Rex64 field. - * i386-opc.h (Rex64): Delete. - (struct i386_opcode_modifier): Remove rex64 field. - * i386-opc.tbl (crc32): Drop Rex64. - Replace Rex64 with Size64 everywhere else. - * i386-tbl.h: Re-generate. - -2020-03-06 Jan Beulich - - * i386-dis.c (OP_E_memory): Exclude recording of used address - prefix for "bnd" modes only in 64-bit mode. Don't decode 16-bit - addressed memory operands for MPX insns. - -2020-03-06 Jan Beulich - - * i386-opc.tbl (movmskps, mwait, vmread, vmwrite, invept, - invvpid, invpcid, rdfsbase, rdgsbase, wrfsbase, wrgsbase, adcx, - adox, mwaitx, rdpid, movdiri): Add IgnoreSize. - (ptwrite): Split into non-64-bit and 64-bit forms. - * i386-tbl.h: Re-generate. - -2020-03-06 Jan Beulich - - * i386-opc.tbl (tpause, umwait): Add IgnoreSize. Add 3-operand - template. - * i386-tbl.h: Re-generate. - -2020-03-04 Jan Beulich - - * i386-dis.c (PREFIX_0F01_REG_3_RM_1): New. - (prefix_table): Move vmmcall here. Add vmgexit. - (rm_table): Replace vmmcall entry by prefix_table[] escape. - * i386-gen.c (cpu_flag_init): Add CPU_SEV_ES_FLAGS entry. - (cpu_flags): Add CpuSEV_ES entry. - * i386-opc.h (CpuSEV_ES): New. - (union i386_cpu_flags): Add cpusev_es field. - * i386-opc.tbl (vmgexit): New. - * i386-init.h, i386-tbl.h: Re-generate. - -2020-03-03 H.J. Lu - - * i386-gen.c (opcode_modifiers): Replace IgnoreSize/DefaultSize - with MnemonicSize. - * i386-opc.h (IGNORESIZE): New. - (DEFAULTSIZE): Likewise. - (IgnoreSize): Removed. - (DefaultSize): Likewise. - (MnemonicSize): New. - (i386_opcode_modifier): Replace ignoresize/defaultsize with - mnemonicsize. - * i386-opc.tbl (IgnoreSize): New. - (DefaultSize): Likewise. - * i386-tbl.h: Regenerated. - -2020-03-03 Sergey Belyashov - - PR 25627 - * z80-dis.c: Fix disassembly of LD IY,(HL) and D (HL),IX - instructions. - -2020-03-03 H.J. Lu - - PR gas/25622 - * i386-opc.tbl: Add IgnoreSize to cvtsi2sd, cvtsi2ss, vcvtsi2sd, - vcvtsi2ss, vcvtusi2sd and vcvtusi2ss for AT&T syntax. - * i386-tbl.h: Regenerated. - -2020-02-26 Alan Modra - - * aarch64-asm.c: Indent labels correctly. - * aarch64-dis.c: Likewise. - * aarch64-gen.c: Likewise. - * aarch64-opc.c: Likewise. - * alpha-dis.c: Likewise. - * i386-dis.c: Likewise. - * nds32-asm.c: Likewise. - * nfp-dis.c: Likewise. - * visium-dis.c: Likewise. - -2020-02-25 Claudiu Zissulescu - - * arc-regs.h (int_vector_base): Make it available for all ARC - CPUs. - -2020-02-20 Nelson Chu - - * riscv-dis.c (print_insn_args): Updated since the DECLARE_CSR is - changed. - -2020-02-19 Nelson Chu - - * riscv-opc.c (riscv_opcodes): Convert add/addi to the compressed - c.mv/c.li if rs1 is zero. - -2020-02-17 H.J. Lu - - * i386-gen.c (cpu_flag_init): Replace CpuABM with - CpuLZCNT|CpuPOPCNT. Add CpuPOPCNT to CPU_SSE4_2_FLAGS. Add - CPU_POPCNT_FLAGS. - (cpu_flags): Remove CpuABM. Add CpuPOPCNT. - * i386-opc.h (CpuABM): Removed. - (CpuPOPCNT): New. - (i386_cpu_flags): Remove cpuabm. Add cpupopcnt. - * i386-opc.tbl: Replace CpuABM|CpuSSE4_2 with CpuPOPCNT on - popcnt. Remove CpuABM from lzcnt. - * i386-init.h: Regenerated. - * i386-tbl.h: Likewise. - -2020-02-17 Jan Beulich - - * i386-opc.tbl (vcvtsi2sd, vcvtsi2ss, vcvtusi2sd, vcvtusi2ss): - Fold CpuNo64 and Cpu64 templates. Use VexLIG/EVexLIG and VexW0/ - VexW1 instead of open-coding them. - * i386-tbl.h: Re-generate. - -2020-02-17 Jan Beulich - - * i386-opc.tbl (AddrPrefixOpReg): Define. - (monitor, invlpga, vmload, vmrun, vmsave, clzero, monitorx, - umonitor, movdir64b, enqcmd, enqcmds): Fold Cpu64 and CpuNo64 - templates. Drop NoRex64. - * i386-tbl.h: Re-generate. - -2020-02-17 Jan Beulich - - PR gas/6518 - * i386-opc.tbl (vcvtpd2dq, vcvtpd2ps, vcvttpd2dq, vcvtpd2udq, - vcvttpd2udq, vcvtqq2ps, vcvtuqq2ps): Split XMM/YMM source forms - into Intel syntax instance (with Unpsecified) and AT&T one - (without). - (vcvtneps2bf16): Likewise, along with folding the two so far - separate ones. - * i386-tbl.h: Re-generate. - -2020-02-16 H.J. Lu - - * i386-gen.c (cpu_flag_init): Remove CPU_ANY_SSE3_FLAGS from - CPU_ANY_SSE4A_FLAGS. - -2020-02-17 Alan Modra - - * i386-gen.c (cpu_flag_init): Correct last change. - -2020-02-16 H.J. Lu - - * i386-gen.c (cpu_flag_init): Add CPU_ANY_SSE4A_FLAGS. Remove - CPU_ANY_SSE4_FLAGS. - -2020-02-14 H.J. Lu - - * i386-opc.tbl (movsx): Remove Intel syntax comments. - (movzx): Likewise. - -2020-02-14 Jan Beulich - - PR gas/25438 - * i386-opc.tbl (movsx): Fold patterns. Also allow Reg32 as - destination for Cpu64-only variant. - (movzx): Fold patterns. - * i386-tbl.h: Re-generate. - -2020-02-13 Jan Beulich - - * i386-gen.c (cpu_flag_init): Move CpuSSE4a from - CPU_ANY_SSE_FLAGS entry to CPU_ANY_SSE3_FLAGS one. Add - CPU_ANY_SSE4_FLAGS entry. - * i386-init.h: Re-generate. - -2020-02-12 Jan Beulich - - * i386-opc.tbl (vfpclasspd, vfpclassps): Add Intel sytax form - with Unspecified, making the present one AT&T syntax only. - * i386-tbl.h: Re-generate. - -2020-02-12 Jan Beulich - - * i386-opc.tbl (jmp): Fold CpuNo64 and Amd64 direct variants. - * i386-tbl.h: Re-generate. - -2020-02-12 Jan Beulich - - PR gas/24546 - * i386-dis.c (putop): Handle REX.W in '^' case for Intel64 mode. - * i386-opc.tbl (lfs, lgs, lss, lcall, ljmp): Split into - Amd64 and Intel64 templates. - (call, jmp): Likewise for far indirect variants. Dro - Unspecified. - * i386-tbl.h: Re-generate. - -2020-02-11 Jan Beulich - - * i386-gen.c (opcode_modifiers): Remove ShortForm entry. - * i386-opc.h (ShortForm): Delete. - (struct i386_opcode_modifier): Remove shortform field. - * i386-opc.tbl (mov, movabs, push, pop, xchg, inc, dec, fld, - fst, fstp, fxch, fcom, fcomp, fucom, fucomp, fadd, faddp, fsub, - fsubp, fsubr, fsubrp, fmul, fmulp, fdiv, fdivp, fdivr, fdivrp, - ffreep, bswap, fcmov*, fcomi, fcomip, fucomi, fucomip, movq): - Drop ShortForm. - * i386-tbl.h: Re-generate. - -2020-02-11 Jan Beulich - - * i386-opc.tbl (fcomi, fucomi, fcomip, fcompi, fucomip, - fucompi): Drop ShortForm from operand-less templates. - * i386-tbl.h: Re-generate. - -2020-02-11 Alan Modra - - * cgen-ibld.in (extract_normal): Set *valuep on all return paths. - * bpf-ibld.c, * epiphany-ibld.c, * fr30-ibld.c, * frv-ibld.c, - * ip2k-ibld.c, * iq2000-ibld.c, * lm32-ibld.c, * m32c-ibld.c, - * m32r-ibld.c, * mep-ibld.c, * mt-ibld.c, * or1k-ibld.c, - * xc16x-ibld.c, * xstormy16-ibld.c: Regenerate. - -2020-02-10 Matthew Malcomson - - * arm-dis.c (print_insn_cde): Define 'V' parse character. - (cde_opcodes): Add VCX* instructions. - -2020-02-10 Stam Markianos-Wright - Matthew Malcomson - - * arm-dis.c (struct cdeopcode32): New. - (CDE_OPCODE): New macro. - (cde_opcodes): New disassembly table. - (regnames): New option to table. - (cde_coprocs): New global variable. - (print_insn_cde): New - (print_insn_thumb32): Use print_insn_cde. - (parse_arm_disassembler_options): Parse coprocN args. - -2020-02-10 H.J. Lu - - PR gas/25516 - * i386-gen.c (opcode_modifiers): Replace AMD64 and Intel64 - with ISA64. - * i386-opc.h (AMD64): Removed. - (Intel64): Likewose. - (AMD64): New. - (INTEL64): Likewise. - (INTEL64ONLY): Likewise. - (i386_opcode_modifier): Replace amd64 and intel64 with isa64. - * i386-opc.tbl (Amd64): New. - (Intel64): Likewise. - (Intel64Only): Likewise. - Replace AMD64 with Amd64. Update sysenter/sysenter with - Cpu64 and Intel64Only. Remove AMD64 from sysenter/sysenter. - * i386-tbl.h: Regenerated. - -2020-02-07 Sergey Belyashov - - PR 25469 - * z80-dis.c: Add support for GBZ80 opcodes. - -2020-02-04 Alan Modra - - * d30v-dis.c (print_insn): Make "val" and "opnum" unsigned. - -2020-02-03 Alan Modra - - * m32c-ibld.c: Regenerate. - -2020-02-01 Alan Modra - - * frv-ibld.c: Regenerate. - -2020-01-31 Jan Beulich - - * i386-dis.c (EXxmm_mdq, xmm_mdq_mode): Delete. - (intel_operand_size, OP_EX): Drop xmm_mdq_mode case label. - (OP_E_memory): Replace xmm_mdq_mode case label by - vex_scalar_w_dq_mode one. - * i386-dis-evex-prefix.h: Replace EXxmm_mdq by EXVexWdqScalar. - -2020-01-31 Jan Beulich - - * i386-dis.c (EXVexWdq, vex_w_dq_mode): Delete. - (vex_vsib_d_w_dq_mode, vex_vsib_q_w_dq_mode, - vex_scalar_w_dq_mode): Don't refer to vex_w_dq_mode in comments. - (intel_operand_size): Drop vex_w_dq_mode case label. - -2020-01-31 Richard Sandiford - - * aarch64-tbl.h (aarch64_opcode): Set C_MAX_ELEM for SVE bfcvt. - Remove C_SCAN_MOVPRFX for SVE bfcvtnt. - -2020-01-30 Alan Modra - - * m32c-ibld.c: Regenerate. - -2020-01-30 Jose E. Marchesi - - * bpf-opc.c: Regenerate. - -2020-01-30 Jan Beulich - - * i386-dis.c (X86_64_C2, X86_64_C3): New enumerators. - (dis386): Use them to replace C2/C3 table entries. - (x86_64_table): Add X86_64_C2 and X86_64_C3 entries. - * i386-opc.tbl (ret): Split Cpu64 entries into AMD64 and Intel64 - ones. Use Size64 instead of DefaultSize on Intel64 ones. - * i386-tbl.h: Re-generate. - -2020-01-30 Jan Beulich - - * i386-opc.tbl (call): Drop DefaultSize from Intel64 JumpDword - forms. - (fldenv, fnstenv, fstenv, fnsave, fsave, frstor): Drop - DefaultSize. - * i386-tbl.h: Re-generate. - -2020-01-30 Alan Modra - - * tic4x-dis.c (tic4x_dp): Make unsigned. - -2020-01-27 H.J. Lu - Jan Beulich - - PR binutils/25445 - * i386-dis.c (MOVSXD_Fixup): New function. - (movsxd_mode): New enum. - (x86_64_table): Use MOVSXD_Fixup and movsxd_mode on movsxd. - (intel_operand_size): Handle movsxd_mode. - (OP_E_register): Likewise. - (OP_G): Likewise. - * i386-opc.tbl: Remove Rex64 and allow 32-bit destination - register on movsxd. Add movsxd with 16-bit destination register - for AMD64 and Intel64 ISAs. - * i386-tbl.h: Regenerated. - -2020-01-27 Tamar Christina - - PR 25403 - * aarch64-tbl.h (struct aarch64_opcode): Re-order cfinv. - * aarch64-asm-2.c: Regenerate - * aarch64-dis-2.c: Likewise. - * aarch64-opc-2.c: Likewise. - -2020-01-21 Jan Beulich - - * i386-opc.tbl (sysret): Drop DefaultSize. - * i386-tbl.h: Re-generate. - -2020-01-21 Jan Beulich - - * i386-opc.tbl (vcvtneps2bf16x): Add Broadcast, Xmmword, and - Dword. - (vcvtneps2bf16y): Add Broadcast, Ymmword, and Dword. - * i386-tbl.h: Re-generate. - -2020-01-20 Nick Clifton - - * po/de.po: Updated German translation. - * po/pt_BR.po: Updated Brazilian Portuguese translation. - * po/uk.po: Updated Ukranian translation. - -2020-01-20 Alan Modra - - * hppa-dis.c (fput_const): Remove useless cast. - -2020-01-20 Alan Modra - - * arm-dis.c (print_insn_arm): Wrap 'T' value. - -2020-01-18 Nick Clifton - - * configure: Regenerate. - * po/opcodes.pot: Regenerate. - -2020-01-18 Nick Clifton - - Binutils 2.34 branch created. - -2020-01-17 Christian Biesinger - - * opintl.h: Fix spelling error (seperate). - -2020-01-17 H.J. Lu - - * i386-opc.tbl: Add {vex} pseudo prefix. - * i386-tbl.h: Regenerated. - -2020-01-16 Andre Vieira - - PR 25376 - * arm-dis.c (coprocessor_opcodes): Use CORE_HIGH for MVE bits. - (neon_opcodes): Likewise. - (select_arm_features): Make sure we enable MVE bits when selecting - armv8.1-m.main. Make sure we do not enable MVE bits when not selecting - any architecture. - -2020-01-16 Jan Beulich - - * i386-opc.tbl: Drop stale comment from XOP section. - -2020-01-16 Jan Beulich - - * i386-opc.tbl (movq): Add VexWIG to SSE2AVX XMM->XMM forms. - (extractps): Add VexWIG to SSE2AVX forms. - * i386-tbl.h: Re-generate. - -2020-01-16 Jan Beulich - - * i386-opc.tbl (pextrq, pinsrq): Drop IgnoreSize and Qword. Drop - Size64 from and use VexW1 on SSE2AVX forms. - (vpextrq, vpinsrq): Drop IgnoreSize and Qword. Drop Size64 from - VEX-encoded forms. Add Cpu64 to EVEX-encoded forms. Use VexW1. - * i386-tbl.h: Re-generate. - -2020-01-15 Alan Modra - - * tic4x-dis.c (tic4x_version): Make unsigned long. - (optab, optab_special, registernames): New file scope vars. - (tic4x_print_register): Set up registernames rather than - malloc'd registertable. - (tic4x_disassemble): Delete optable and optable_special. Use - optab and optab_special instead. Throw away old optab, - optab_special and registernames when info->mach changes. - -2020-01-14 Sergey Belyashov - - PR 25377 - * z80-dis.c (suffix): Use .db instruction to generate double - prefix. - -2020-01-14 Alan Modra - - * z8k-dis.c (unpack_instr): Formatting. Cast unsigned short - values to unsigned before shifting. - -2020-01-13 Thomas Troeger - - * arm-dis.c (print_insn_arm): Fill in insn info fields for control - flow instructions. - (print_insn_thumb16, print_insn_thumb32): Likewise. - (print_insn): Initialize the insn info. - * i386-dis.c (print_insn): Initialize the insn info fields, and - detect jumps. - -2020-01-13 Claudiu Zissulescu - - * arc-opc.c (C_NE): Make it required. - -2020-01-13 Claudiu Zissulescu - - * opcode/arc-dis.c (regnames): Correct ACCL/ACCH naming, fix typo - reserved register name. - -2020-01-13 Alan Modra - - * ns32k-dis.c (Is_gen): Use strchr, add 'f'. - (print_insn_ns32k): Adjust ioffset for 'f' index_offset. - -2020-01-13 Alan Modra - - * wasm32-dis.c (print_insn_wasm32): Localise variables. Store - result of wasm_read_leb128 in a uint64_t and check that bits - are not lost when copying to other locals. Use uint32_t for - most locals. Use PRId64 when printing int64_t. - -2020-01-13 Alan Modra - - * score-dis.c: Formatting. - * score7-dis.c: Formatting. - -2020-01-13 Alan Modra - - * score-dis.c (print_insn_score48): Use unsigned variables for - unsigned values. Don't left shift negative values. - (print_insn_score32): Likewise. - * score7-dis.c (print_insn_score32, print_insn_score16): Likewise. - -2020-01-13 Alan Modra - - * tic4x-dis.c (tic4x_print_register): Remove dead code. - -2020-01-13 Alan Modra - - * fr30-ibld.c: Regenerate. - -2020-01-13 Alan Modra - - * xgate-dis.c (print_insn): Don't left shift signed value. - (ripBits): Formatting, use 1u. - -2020-01-10 Alan Modra - - * tilepro-opc.c (parse_insn_tilepro): Make opval unsigned. - * tilegx-opc.c (parse_insn_tilegx): Likewise. Delete raw_opval. - -2020-01-10 Alan Modra - - * m10300-dis.c (disassemble): Move extraction of DREG, AREG, RREG, - and XRREG value earlier to avoid a shift with negative exponent. - * m10200-dis.c (disassemble): Similarly. - -2020-01-09 Nick Clifton - - PR 25224 - * z80-dis.c (ld_ii_ii): Use correct cast. - -2020-01-03 Sergey Belyashov - - PR 25224 - * z80-dis.c (ld_ii_ii): Use character constant when checking - opcode byte value. - -2020-01-09 Jan Beulich - - * i386-dis.c (SEP_Fixup): New. - (SEP): Define. - (dis386_twobyte): Use it for sysenter/sysexit. - (enum x86_64_isa): Change amd64 enumerator to value 1. - (OP_J): Compare isa64 against intel64 instead of amd64. - * i386-opc.tbl (sysenter, sysexit): Split into AMD64 and Intel64 - forms. - * i386-tbl.h: Re-generate. - -2020-01-08 Alan Modra - - * z8k-dis.c: Include libiberty.h - (instr_data_s): Make max_fetched unsigned. - (z8k_lookup_instr): Make nibl_index and tabl_index unsigned. - Don't exceed byte_info bounds. - (output_instr): Make num_bytes unsigned. - (unpack_instr): Likewise for nibl_count and loop. - * z8kgen.c (gas ): Make noperands, length and - idx unsigned. - * z8k-opc.h: Regenerate. - -2020-01-07 Shahab Vahedi - - * arc-tbl.h (llock): Use 'LLOCK' as class. - (llockd): Likewise. - (scond): Use 'SCOND' as class. - (scondd): Likewise. - (llockd): Set data_size_mode to 'C_ZZ_D' which is 64-bit. - (scondd): Likewise. - -2020-01-06 Alan Modra - - * m32c-ibld.c: Regenerate. - -2020-01-06 Alan Modra - - PR 25344 - * z80-dis.c (suffix): Don't use a local struct buffer copy. - Peek at next byte to prevent recursion on repeated prefix bytes. - Ensure uninitialised "mybuf" is not accessed. - (print_insn_z80): Don't zero n_fetch and n_used here,.. - (print_insn_z80_buf): ..do it here instead. - -2020-01-04 Alan Modra - - * m32r-ibld.c: Regenerate. - -2020-01-04 Alan Modra - - * cr16-dis.c (cr16_match_opcode): Avoid shift left of signed value. - -2020-01-04 Alan Modra - - * crx-dis.c (match_opcode): Avoid shift left of signed value. - -2020-01-04 Alan Modra - - * d30v-dis.c (print_insn): Avoid signed overflow in left shift. - -2020-01-03 Jan Beulich - - * aarch64-tbl.h (aarch64_opcode_table): Use - SVE_ADDR_RX_LSL{1,2,3} for LD1RO{H,W,D}. - -2020-01-03 Jan Beulich - - * aarch64-tbl.h (aarch64_opcode_table): Correct SIMD - forms of SUDOT and USDOT. - -2020-01-03 Jan Beulich - - * aarch64-tbl.h (aarch64_opcode_table): Drop 'i' from - uzip{1,2}. - * aarch64-dis-2.c: Re-generate. - -2020-01-03 Jan Beulich - - * aarch64-tbl.h (aarch64_opcode_table): Correct 64-bit - FMMLA encoding. - * aarch64-dis-2.c: Re-generate. - -2020-01-02 Sergey Belyashov - - * z80-dis.c: Add support for eZ80 and Z80 instructions. - -2020-01-01 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2019 +For older changes see ChangeLog-2020 -Copyright (C) 2020 Free Software Foundation, Inc. +Copyright (C) 2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/opcodes/ChangeLog-2020 b/opcodes/ChangeLog-2020 new file mode 100644 index 00000000000..92a95254a54 --- /dev/null +++ b/opcodes/ChangeLog-2020 @@ -0,0 +1,3281 @@ +2020-12-10 Nelson Chu + + * riscv-opc.c (riscv_opcodes): Add sext.[bh] and zext.[bhw]. + +2020-12-10 Nelson Chu + + * disassemble.h (riscv_get_disassembler): Declare. + * disassemble.c (disassembler): Changed to riscv_get_disassembler. + * riscv-dis.c (riscv_get_disassembler): Check the elf privileged spec + attributes before calling print_insn_riscv. + (parse_riscv_dis_option): Same as the assembler, the priority of elf + attributes are higher than the options. If we find the privileged + attributes, but the -Mpriv-spec= is different, then output error/warning + and still use the elf attributes set. + +2020-12-10 Nelson Chu + + * riscv-opc.c (riscv_opcodes): Control fence.i and csr instructions by + zifencei and zicsr. + +2020-12-04 Andreas Krebbel + + * s390-opc.txt: Add risbgz and risbgnz. + * s390-opc.c (U6_26): New operand type. + (INSTR_RIE_RRUUU2, MASK_RIE_RRUUU2): New instruction format and + mask. + +2020-12-03 Andreas Krebbel + + * s390-opc.txt: Add extended mnemonics. + +2020-12-01 Nelson Chu + + * riscv-opc.c (riscv_ext_version_table): Remove the p, v, n + and their versions. + +2020-12-01 Nelson Chu + + * riscv-opc.c (riscv_ext_version_table): Add zifencei. + +2020-11-28 Borislav Petkov + + * i386-dis.c (print_insn): Set active_seg_prefix for branch hint insns + to not dump branch hint prefixes 0x2E and 0x3E as unused prefixes. + +2020-11-16 Przemyslaw Wirkus + + * aarch64-tbl.h (FLAGM): Handle for FLAGM feature. + (struct aarch64_opcode): Move FLAGM instructions from V8_4_INSN to + FLAGM_INSN. + (AARCH64_FEATURE_FLAGMANIP): Update comment for FEAT_FlagM2. + +2020-11-14 Borislav Petkov + + * i386-dis.c (ckprefix): Do not assign active_seg_prefix in + 64-bit addressing mode. + (NOTRACK_Fixup): Test prefixes for PREFIX_DS, instead of + active_seg_prefix. + +2020-11-11 Przemyslaw Wirkus + + * aarch64-tbl.h: Enable -march=armv8.6-a+ls64. + +2020-11-09 Spencer E. Olson + + * pru-opc.c: Add opcode description for LMBD (left-most bit + detect). + +2020-11-09 Przemyslaw Wirkus + + * aarch64-opc.c: Add ACCDATA_EL1 system register + +2020-11-09 Przemyslaw Wirkus + + * aarch64-opc.c (aarch64_print_operand): Support operand AARCH64_OPND_Rt_LS64 + print. + * aarch64-tbl.h (struct aarch64_opcode): Update _LS64_INSN instructions with + Rt_ls64 operands. + * aarch64-asm-2.c: Regenerated. + * aarch64-dis-2.c: Regenerated. + * aarch64-opc-2.c: Regenerated. + +2020-11-06 Przemyslaw Wirkus + + * aarch64-tbl.h (PAC): Handle for PAC feature. + (PAC_INSN): New PAC instruction. + (struct aarch64_opcode): Move PAC instructions from V8_3_INSN to + PAC_INSN. + +2020-11-04 Przemyslaw Wirkus + + * aarch64-opc.c: Add RAS 1.1 new system registers: ERXPFGCTL_EL1, + ERXPFGCDN_EL1, ERXMISC2_EL1, ERXMISC3_EL1 and ERXPFGF_EL1. + +2020-11-03 Przemyslaw Wirkus + + * aarch64-tbl.h (QL_X2NIL): New qualifier for 64-byte stores. + (LS64): Handler with +ls64 feature flags. + (_LS64_INSN): New instruction group macro. + (struct aarch64_opcode): Add LS64 instructions. + * aarch64-asm-2.c: Regenerated. + * aarch64-dis-2.c: Regenerated. + * aarch64-opc-2.c: Regenerated. + +2020-10-30 Przemyslaw Wirkus + + * aarch65-tbl.h (struct aarch64_opcode): New instruction WFIT. + * aarch64-asm-2.c: Regenerated. + * aarch64-dis-2.c: Regenerated. + * aarch64-opc-2.c: Regenerated. + +2020-10-27 Przemyslaw Wirkus + + * aarch64-opc.c (aarch64_print_operand): CSR PDEC operand print-out. + * aarch64-tbl.h (CSRE): New CSRE feature handler. + (_CSRE_INSN): New CSRE instruction type. + (struct aarch64_opcode): New 'csre' entry for a CSRE CLI feature. + * aarch64-asm-2.c: Regenerated. + * aarch64-dis-2.c: Regenerated. + * aarch64-opc-2.c: Regenerated. + +2020-10-27 Przemyslaw Wirkus + + * aarch64-tbl.h (struct aarch64_opcode): Add new WFET instruction encoding + and operand description. + * aarch64-asm-2.c: Regenerated. + * aarch64-dis-2.c: Regenerated. + * aarch64-opc-2.c: Regenerated. + +2020-10-26 Cooper Qu + + * csky-opc.h (csky_v2_opcodes): Change plsl.u16 to plsl.16. + +2020-10-26 Cooper Qu + + * csky-dis.c (csky_output_operand): Add handler for + OPRND_TYPE_IMM5b_VSH and OPRND_TYPE_VREG_WITH_INDEX. + * csky-opc.h (OPRND_TYPE_VREG_WITH_INDEX): New enum. + (OPRND_TYPE_IMM5b_VSH): New enum. (csky_v2_opcodes): Fix and add + some instructions for VDSPV1. + +2020-10-26 Lili Cui + + * i386-dis.c: Change "XV" to print "{vex}" pseudo prefix. + +2020-10-23 Przemyslaw Wirkus + + * aarch64-asm.c (aarch64_ins_barrier_dsb_nxs): New inserter. + * aarch64-asm.h (AARCH64_DECL_OPD_INSERTER): New inserter + ins_barrier_dsb_nx. + * aarch64-dis.c (aarch64_ext_barrier_dsb_nxs): New extractor. + * aarch64-dis.h (AARCH64_DECL_OPD_EXTRACTOR): New extractor + ext_barrier_dsb_nx. + * aarch64-opc.c (aarch64_print_operand): New options table + aarch64_barrier_dsb_nxs_options. + * aarch64-opc.h (enum aarch64_field_kind): New field name FLD_CRm_dsb_nxs. + * aarch64-tbl.h (struct aarch64_opcode): Define DSB nXS barrier + Armv8.7-a instruction. + * aarch64-asm-2.c: Regenerated. + * aarch64-dis-2.c: Regenerated. + * aarch64-opc-2.c: Regenerated. + +2020-10-22 H.J. Lu + + * po/es.po: Remove the duplicated entry. + +2020-10-20 Dr. David Alan Gilbert + + * po/es.po: Fix printf format. + +2020-10-20 Ganesh Gopalasubramanian + + * i386-dis.c (rm_table): Add tlbsync, snp, invlpgb. + * i386-gen.c (cpu_flag_init): Add new CPU_INVLPGB_FLAGS, + CPU_TLBSYNC_FLAGS, and CPU_SNP_FLAGS. + Add CPU_ZNVER3_FLAGS. + (cpu_flags): Add CpuINVLPGB, CpuTLBSYNC, CpuSNP. + * i386-opc.h: Add CpuINVLPGB, CpuTLBSYNC, CpuSNP. + * i386-opc.tbl: Add invlpgb, tlbsync, psmash, pvalidate, + rmpupdate, rmpadjust. + * i386-init.h: Re-generated. + * i386-tbl.h: Re-generated. + +2020-10-16 Lili Cui + + * i386-opc.tbl: Rename CpuVEX_PREFIX to PseudoVexPrefix + and move it from cpu_flags to opcode_modifiers. + Use VexW0 and VexVVVV in the AVX-VNNI instructions. + * i386-gen.c: Likewise. + * i386-opc.h: Likewise. + * i386-opc.h: Likewise. + * i386-init.h: Regenerated. + * i386-tbl.h: Likewise. + +2020-10-16 Przemyslaw Wirkus + + * aarch64-tbl.h (ARMV8_7): New macro. + +2020-10-14 H.J. Lu + Lili Cui + + * i386-dis.c (PREFIX_VEX_0F3850): New. + (PREFIX_VEX_0F3851): Likewise. + (PREFIX_VEX_0F3852): Likewise. + (PREFIX_VEX_0F3853): Likewise. + (VEX_W_0F3850_P_2): Likewise. + (VEX_W_0F3851_P_2): Likewise. + (VEX_W_0F3852_P_2): Likewise. + (VEX_W_0F3853_P_2): Likewise. + (prefix_table): Add PREFIX_VEX_0F3850, PREFIX_VEX_0F3851, + PREFIX_VEX_0F3852 and PREFIX_VEX_0F3853. + (vex_table): Add VEX_W_0F3850_P_2, VEX_W_0F3851_P_2, + VEX_W_0F3852_P_2 and VEX_W_0F3853_P_2. + (putop): Add support for "XV" to print "{vex3}" pseudo prefix. + * i386-gen.c (cpu_flag_init): Clear the CpuAVX_VNNI bit in + CPU_UNKNOWN_FLAGS. Add CPU_AVX_VNNI_FLAGS and + CPU_ANY_AVX_VNNI_FLAGS. + (cpu_flags): Add CpuAVX_VNNI and CpuVEX_PREFIX. + * i386-opc.h (CpuAVX_VNNI): New. + (CpuVEX_PREFIX): Likewise. + (i386_cpu_flags): Add cpuavx_vnni and cpuvex_prefix. + * i386-opc.tbl: Add Intel AVX VNNI instructions. + * i386-init.h: Regenerated. + * i386-tbl.h: Likewise. + +2020-10-14 Lili Cui + H.J. Lu + + * i386-dis.c (PREFIX_0F3A0F): New. + (MOD_0F3A0F_PREFIX_1): Likewise. + (REG_0F3A0F_PREFIX_1_MOD_3): Likewise. + (RM_0F3A0F_P_1_MOD_3_REG_0): Likewise. + (prefix_table): Add PREFIX_0F3A0F. + (mod_table): Add MOD_0F3A0F_PREFIX_1. + (reg_table): Add REG_0F3A0F_PREFIX_1_MOD_3. + (rm_table): Add RM_0F3A0F_P_1_MOD_3_REG_0. + * i386-gen.c (cpu_flag_init): Add HRESET_FLAGS, + CPU_ANY_HRESET_FLAGS. + (cpu_flags): Add CpuHRESET. + (output_i386_opcode): Allow 4 byte base_opcode. + * i386-opc.h (enum): Add CpuHRESET. + (i386_cpu_flags): Add cpuhreset. + * i386-opc.tbl: Add Intel HRESET instruction. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2020-10-14 Lili Cui + + * i386-dis.c (enum): Add + PREFIX_MOD_3_0F01_REG_5_RM_4, + PREFIX_MOD_3_0F01_REG_5_RM_5, + PREFIX_MOD_3_0F01_REG_5_RM_6, + PREFIX_MOD_3_0F01_REG_5_RM_7, + X86_64_0F01_REG_5_MOD_3_RM_4_PREFIX_1, + X86_64_0F01_REG_5_MOD_3_RM_5_PREFIX_1, + X86_64_0F01_REG_5_MOD_3_RM_6_PREFIX_1, + X86_64_0F01_REG_5_MOD_3_RM_7_PREFIX_1, + X86_64_0FC7_REG_6_MOD_3_PREFIX_1. + (prefix_table): New instructions (see prefixes above). + (rm_table): Likewise + * i386-gen.c (cpu_flag_init): Add CPU_UINTR_FLAGS, + CPU_ANY_UINTR_FLAGS. + (cpu_flags): Add CpuUINTR. + * i386-opc.h (enum): Add CpuUINTR. + (i386_cpu_flags): Add cpuuintr. + * i386-opc.tbl: Add UINTR insns. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2020-10-14 H.J. Lu + + * i386-gen.c (process_i386_opcode_modifier): Return 1 for + non-VEX/EVEX/prefix encoding. + (output_i386_opcode): Fail if non-VEX/EVEX/prefix base_opcode + has a prefix byte. + * i386-opc.tbl: Replace the prefix byte in non-VEX/EVEX + base_opcode with PREFIX_0X66, PREFIX_0XF2 or PREFIX_0XF3. + * i386-tbl.h: Regenerated. + +2020-10-13 H.J. Lu + + * i386-gen.c (opcode_modifiers): Replace VexOpcode with + OpcodePrefix. + * i386-opc.h (VexOpcode): Renamed to ... + (OpcodePrefix): This. + (PREFIX_NONE): New. + (PREFIX_0X66): Likewise. + (PREFIX_0XF2): Likewise. + (PREFIX_0XF3): Likewise. + * i386-opc.tbl (Prefix_0X66): New. + (Prefix_0XF2): Likewise. + (Prefix_0XF3): Likewise. + Replace VexOpcode= with OpcodePrefix=. Use Prefix_0X66 on xorpd. + Use Prefix_0XF3 on cvtdq2pd. Use Prefix_0XF2 on cvtpd2dq. + * i386-tbl.h: Regenerated. + +2020-10-08 Przemyslaw Wirkus + + * aarch64-opc.c: Add BRBE system registers. + +2020-10-08 Przemyslaw Wirkus + + * aarch64-opc.c: New CSRE system registers defined. + +2020-10-05 Samanta Navarro + + * cgen-asm.c: Fix spelling mistakes. + * cgen-dis.c: Fix spelling mistakes. + * tic30-dis.c: Fix spelling mistakes. + +2020-10-05 H.J. Lu + + PR binutils/26704 + * i386-dis.c (putop): Always display suffix for %LQ in 64bit. + +2020-10-05 H.J. Lu + + PR binutils/26705 + * i386-dis.c (print_insn): Clear modrm if not needed. + (putop): Check need_modrm for modrm.mod != 3. Don't check + need_modrm for modrm.mod == 3. + +2020-09-28 Przemyslaw Wirkus + + * aarch64-opc.c: Added ETMv4 system registers TRCACATRn, TRCACVRn, + TRCAUTHSTATUS, TRCAUXCTLR, TRCBBCTLR, TRCCCCTLR, TRCCIDCCTLR0, TRCCIDCCTLR1, + TRCCIDCVRn, TRCCIDR0, TRCCIDR1, TRCCIDR2, TRCCIDR3, TRCCLAIMCLR, TRCCLAIMSET, + TRCCNTCTLRn, TRCCNTRLDVRn, TRCCNTVRn, TRCCONFIGR, TRCDEVAFF0, TRCDEVAFF1, + TRCDEVARCH, TRCDEVID, TRCDEVTYPE, TRCDVCMRn, TRCDVCVRn, TRCEVENTCTL0R, + TRCEVENTCTL1R, TRCEXTINSELR, TRCIDR0, TRCIDR1, TRCIDR2, TRCIDR3, TRCIDR4, + TRCIDR5, TRCIDR6, TRCIDR7, TRCIDR8, TRCIDR9, TRCIDR10, TRCIDR11, TRCIDR12, + TRCIDR13, TRCIMSPEC0, TRCIMSPECn, TRCITCTRL, TRCLAR WOTRCLSR, TRCOSLAR + WOTRCOSLSR, TRCPDCR, TRCPDSR, TRCPIDR0, TRCPIDR1, TRCPIDR2, TRCPIDR3, + TRCPIDR4, TRCPIDR[5,6,7], TRCPRGCTLR, TRCP,CSELR, TRCQCTLR, TRCRSCTLRn, + TRCSEQEVRn, TRCSEQRSTEVR, TRCSEQSTR, TRCSSCCRn, TRCSSCSRn, TRCSSPCICRn, + TRCSTALLCTLR, TRCSTATR, TRCSYNCPR, TRCTRACEIDR, TRCTSCTLR, TRCVDARCCTLR, + TRCVDCTLR, TRCVDSACCTLR, TRCVICTLR, TRCVIIECTLR, TRCVIPCSSCTLR, TRCVISSCTLR, + TRCVMIDCCTLR0, TRCVMIDCCTLR1 and TRCVMIDCVRn. + +2020-09-28 Przemyslaw Wirkus + + * aarch64-opc.c: Add ETE system registers TRCEXTINSELR<0-3> and TRCRSR. + +2020-09-28 Przemyslaw Wirkus + + * aarch64-opc.c: Add TRBE system registers TRBIDR_EL1 , TRBBASER_EL1 , + TRBLIMITR_EL1 , TRBMAR_EL1 , TRBPTR_EL1, TRBSR_EL1 and TRBTRG_EL1. + +2020-09-26 Alan Modra + + * csky-opc.h: Formatting. + (GENERAL_REG_BANK): Correct spelling. Update use throughout file. + (get_register_name): Mask arch with CSKY_ARCH_MASK for shift, + and shift 1u. + (get_register_number): Likewise. + * csky-dis.c (get_gr_name, get_cr_name): Don't mask mach_flag. + +2020-09-24 Lili Cui + + PR 26654 + * i386-dis.c (enum): Put MOD_VEX_0F38* together. + +2020-09-24 Andrew Burgess + + * csky-dis.c (csky_output_operand): Enclose body of if in curly + braces. + +2020-09-24 Lili Cui + + * i386-dis.c (enum): Add PREFIX_0F01_REG_1_RM_5, + PREFIX_0F01_REG_1_RM_6, PREFIX_0F01_REG_1_RM_7, + X86_64_0F01_REG_1_RM_5_P_2, X86_64_0F01_REG_1_RM_6_P_2, + X86_64_0F01_REG_1_RM_7_P_2. + (prefix_table): Likewise. + (x86_64_table): Likewise. + (rm_table): Likewise. + * i386-gen.c (cpu_flag_init): Add CPU_TDX_FLAGS + and CPU_ANY_TDX_FLAGS. + (cpu_flags): Add CpuTDX. + * i386-opc.h (enum): Add CpuTDX. + (i386_cpu_flags): Add cputdx. + * i386-opc.tbl: Add TDX insns. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2020-09-17 Cooper Qu <> + + * csky-dis.c (using_abi): New. + (parse_csky_dis_options): New function. + (get_gr_name): New function. + (get_cr_name): New function. + (csky_output_operand): Use get_gr_name and get_cr_name to + disassemble and add handle of OPRND_TYPE_IMM5b_LS. + (print_insn_csky): Parse disassembler options. + * csky-opc.h (OPRND_TYPE_IMM5b_LS): New enum. + (GENARAL_REG_BANK): Define. + (REG_SUPPORT_ALL): Define. + (REG_SUPPORT_ALL): New. + (ASH): Define. + (REG_SUPPORT_A): Define. + (REG_SUPPORT_B): Define. + (REG_SUPPORT_C): Define. + (REG_SUPPORT_D): Define. + (REG_SUPPORT_E): Define. + (csky_abiv1_general_regs): New. + (csky_abiv1_control_regs): New. + (csky_abiv2_general_regs): New. + (csky_abiv2_control_regs): New. + (get_register_name): New function. + (get_register_number): New function. + (csky_get_general_reg_name): New function. + (csky_get_general_regno): New function. + (csky_get_control_reg_name): New function. + (csky_get_control_regno): New function. + (csky_v2_opcodes): Prefer two oprerans format for bclri and + bseti, strengthen the operands legality check of addc, zext + and sext. + +2020-09-23 Lili Cui + + * i386-dis.c (enum): Add REG_0F38D8_PREFIX_1, + MOD_0F38FA_PREFIX_1, MOD_0F38FB_PREFIX_1, + MOD_0F38DC_PREFIX_1, MOD_0F38DD_PREFIX_1, + MOD_0F38DE_PREFIX_1, MOD_0F38DF_PREFIX_1, + PREFIX_0F38D8, PREFIX_0F38FA, PREFIX_0F38FB. + (reg_table): New instructions (see prefixes above). + (prefix_table): Likewise. + (three_byte_table): Likewise. + (mod_table): Likewise + * i386-gen.c (cpu_flag_init): Add CPU_KL_FLAGS, CPU_WIDE_KL_FLAGS, + CPU_ANY_KL_FLAGS and CPU_ANY_WIDE_KL_FLAGS. + (cpu_flags): Likewise. + (operand_type_init): Likewise. + * i386-opc.h (enum): Add CpuKL and CpuWide_KL. + (i386_cpu_flags): Add cpukl and cpuwide_kl. + * i386-opc.tbl: Add KL and WIDE_KL insns. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2020-09-21 Alan Modra + + * rx-dis.c (flag_names): Add missing comma. + (register_names, flag_names, double_register_names), + (double_register_high_names, double_register_low_names), + (double_control_register_names, double_condition_names): Remove + trailing commas. + +2020-09-18 David Faust + + * bpf-desc.c: Regenerate. + * bpf-desc.h: Likewise. + * bpf-opc.c: Likewise. + * bpf-opc.h: Likewise. + +2020-09-16 Andrew Burgess + + * csky-dis.c (csky_get_disassembler): Don't return NULL when there + is no BFD. + +2020-09-16 Alan Modra + + * ppc-dis.c (ppc_symbol_is_valid): Adjust elf_symbol_from invocation. + +2020-09-10 Nick Clifton + + * ppc-dis.c (ppc_symbol_is_valid): New function. Returns false + for hidden, local, no-type symbols. + (disassemble_init_powerpc): Point the symbol_is_valid field in the + info structure at the new function. + +2020-09-10 Cooper Qu + + * csky-opc.h (csky_v2_opcodes): Add L2Cache instructions. + * testsuite/gas/csky/cskyv2_ck860.d : Adjust to icache.iva + opcode fixing. + +2020-09-10 Nick Clifton + + * csky-dis.c (csky_output_operand): Coerce the immediate values to + long before printing. + +2020-09-10 Alan Modra + + * csky-dis.c (csky_output_operand): Don't sprintf str to itself. + +2020-09-07 Cooper Qu + + * csky-opc.h (csky_v2_opcodes): Change mvtc and mulsw's + ISA flag. + +2020-09-07 Cooper Qu + + * csky-dis.c (csky_output_operand): Add handlers for + OPRND_TYPE_HFLOAT_FMOVI, OPRND_TYPE_SFLOAT_FMOVI and + OPRND_TYPE_DFLOAT_FMOVI. Refine OPRND_TYPE_FREGLIST_DASH + to support FPUV3 instructions. + * csky-opc.h (enum operand_type): New enum OPRND_TYPE_IMM9b, + OPRND_TYPE_HFLOAT_FMOVI, OPRND_TYPE_SFLOAT_FMOVI and + OPRND_TYPE_DFLOAT_FMOVI. + (OPRND_MASK_4_5, OPRND_MASK_6, OPRND_MASK_6_7, OPRND_MASK_6_8, + OPRND_MASK_7, OPRND_MASK_7_8, OPRND_MASK_17_24, + OPRND_MASK_20, OPRND_MASK_20_21, OPRND_MASK_20_22, + OPRND_MASK_20_23, OPRND_MASK_20_24, OPRND_MASK_20_25, + OPRND_MASK_0_3or5_8, OPRND_MASK_0_3or6_7, OPRND_MASK_0_3or25, + OPRND_MASK_0_4or21_24, OPRND_MASK_5or20_21, + OPRND_MASK_5or20_22, OPRND_MASK_5or20_23, OPRND_MASK_5or20_24, + OPRND_MASK_5or20_25, OPRND_MASK_8_9or21_25, + OPRND_MASK_8_9or16_25, OPRND_MASK_4_6or20, OPRND_MASK_5_7or20, + OPRND_MASK_4_5or20or25, OPRND_MASK_4_6or20or25, + OPRND_MASK_4_7or20or25, OPRND_MASK_6_9or17_24, + OPRND_MASK_6_7or20, OPRND_MASK_6or20, OPRND_MASK_7or20, + OPRND_MASK_5or8_9or16_25, OPRND_MASK_5or8_9or20_25): Define. + (csky_v2_opcodes): Add FPUV3 instructions. + +2020-09-08 Alex Coplan + + * aarch64-dis.c (print_operands): Pass CPU features to + aarch64_print_operand(). + * aarch64-opc.c (aarch64_print_operand): Use CPU features to determine + preferred disassembly of system registers. + (SR_RNG): Refactor to use new SR_FEAT2 macro. + (SR_FEAT2): New. + (SR_V8_1_A): New. + (SR_V8_4_A): New. + (SR_V8_A): New. + (SR_V8_R): New. + (SR_EXPAND_ELx): New. + (SR_EXPAND_EL12): New. + (aarch64_sys_regs): Specify which registers are only on + A-profile, add R-profile system registers. + (ENC_BARLAR): New. + (PRBARn_ELx): New. + (PRLARn_ELx): New. + (aarch64_sys_ins_reg_supported_p): Reject EL3 registers for + Armv8-R AArch64. + +2020-09-08 Alex Coplan + + * aarch64-tbl.h (aarch64_feature_v8_r): New. + (ARMV8_R): New. + (V8_R_INSN): New. + (aarch64_opcode_table): Add dfb. + * aarch64-opc-2.c: Regenerate. + * aarch64-asm-2.c: Regenerate. + * aarch64-dis-2.c: Regenerate. + +2020-09-08 Alex Coplan + + * aarch64-dis.c (arch_variant): New. + (determine_disassembling_preference): Disassemble according to + arch variant. + (select_aarch64_variant): New. + (print_insn_aarch64): Set feature set. + +2020-09-02 Alan Modra + + * v850-opc.c (insert_i5div1, insert_i5div2, insert_i5div3), + (insert_d5_4, insert_d8_6, insert_d8_7, insert_v8, insert_d9), + (insert_u16_loop, insert_d16_15, insert_d16_16, insert_d17_16), + (insert_d22, insert_d23, insert_d23_align1, insert_i9, insert_u9), + (insert_spe, insert_r4, insert_POS, insert_WIDTH, insert_SELID), + (insert_VECTOR8, insert_VECTOR5, insert_CACHEOP, insert_PREFOP), + (nsert_IMM10U, insert_SRSEL1, insert_SRSEL2): Use unsigned long + for value parameter and update code to suit. + (extract_d9, extract_d16_15, extract_d16_16, extract_d17_16), + (extract_d22, extract_d23, extract_i9): Use unsigned long variables. + +2020-09-02 Alan Modra + + * i386-dis.c (OP_E_memory): Don't cast to signed type when + negating. + (get32, get32s): Use unsigned types in shift expressions. + +2020-09-02 Alan Modra + + * csky-dis.c (print_insn_csky): Use unsigned type for "given". + +2020-09-02 Alan Modra + + * crx-dis.c: Whitespace. + (print_arg): Use unsigned type for longdisp and mask variables, + and for left shift constant. + +2020-09-02 Alan Modra + + * cgen-ibld.in (insert_normal, extract_normal): Use 1UL in left shift. + * bpf-ibld.c: Regenerate. + * epiphany-ibld.c: Regenerate. + * fr30-ibld.c: Regenerate. + * frv-ibld.c: Regenerate. + * ip2k-ibld.c: Regenerate. + * iq2000-ibld.c: Regenerate. + * lm32-ibld.c: Regenerate. + * m32c-ibld.c: Regenerate. + * m32r-ibld.c: Regenerate. + * mep-ibld.c: Regenerate. + * mt-ibld.c: Regenerate. + * or1k-ibld.c: Regenerate. + * xc16x-ibld.c: Regenerate. + * xstormy16-ibld.c: Regenerate. + +2020-09-02 Alan Modra + + * bfin-dis.c (MASKBITS): Use SIGNBIT. + +2020-09-02 Cooper Qu + + * csky-opc.h (csky_v2_opcodes): Move divul and divsl + to CSKYV2_ISA_3E3R3 instruction set. + +2020-09-02 Cooper Qu + + * csky-opc.h (csky_v2_opcodes): Fix Encode of mulsws. + +2020-09-01 Alan Modra + + * mep-ibld.c: Regenerate. + +2020-08-31 Cooper Qu + + * csky-dis.c (csky_output_operand): Assign dis_info.value for + OPRND_TYPE_VREG. + +2020-08-30 Alan Modra + + * cr16-dis.c: Formatting. + (parameter): Delete struct typedef. Use dwordU instead + throughout file. + (make_argument ): Simplify detection of cbitb, sbitb + and tbitb. + (make_argument ): Extract 20-bit field not 16-bit. + +2020-08-29 Alan Modra + + PR 26446 + * csky-opc.h (MAX_OPRND_NUM): Define to 5. + (union csky_operand): Use MAX_OPRND_NUM to size oprnds array. + +2020-08-28 Alan Modra + + PR 26449 + PR 26450 + * cgen-ibld.in (insert_1): Use 1UL in forming mask. + (extract_normal): Likewise. + (insert_normal): Likewise, and move past zero length test. + (put_insn_int_value): Handle mask for zero length, use 1UL. + * bpf-ibld.c, * epiphany-ibld.c, * fr30-ibld.c, * frv-ibld.c, + * ip2k-ibld.c, * iq2000-ibld.c, * lm32-ibld.c, * m32c-ibld.c, + * m32r-ibld.c, * mep-ibld.c, * mt-ibld.c, * or1k-ibld.c, + * xc16x-ibld.c, * xstormy16-ibld.c: Regenerate. + +2020-08-28 Cooper Qu + + * csky-dis.c (CSKY_DEFAULT_ISA): Define. + (csky_dis_info): Add member isa. + (csky_find_inst_info): Skip instructions that do not belong to + current CPU. + (csky_get_disassembler): Get infomation from attribute section. + (print_insn_csky): Set defualt ISA flag. + * csky.h (CSKY_ISA_VDSP_2): Rename from CSKY_ISA_VDSP_V2. + * csky-opc.h (struct csky_opcode): Change isa_flag16 and + isa_flag32'type to unsigned 64 bits. + +2020-08-26 Jose E. Marchesi + + * disassemble.c (enum epbf_isa_attr): Add ISA_XBPFBE, ISA_EBPFMAX. + +2020-08-26 David Faust + + * bpf-desc.c: Regenerate. + * bpf-desc.h: Likewise. + * bpf-opc.c: Likewise. + * bpf-opc.h: Likewise. + * disassemble.c (disassemble_init_for_target): Set bits for xBPF + ISA when appropriate. + +2020-08-25 Alan Modra + + PR 26504 + * vax-dis.c (parse_disassembler_options): Always add at least one + to entry_addr_total_slots. + +2020-08-24 Cooper Qu + + * csky-dis.c (csky_find_inst_info): Skip CK860's instructions + in other CPUs to speed up disassembling. + * csky-opc.h (csky_v2_opcodes): Add CK860's instructions, + Change plsli.u16 to plsli.16, change sync's operand format. + +2020-08-21 Cooper Qu + + * csky-opc.h (csky_v2_opcodes): Add instruction bnezad. + +2020-08-21 Nick Clifton + + * aarch64-dis.c (get_sym_code_type): Return FALSE for non-ELF + symbols. + +2020-08-21 Cooper Qu + + * csky-opc.h (csky_v2_opcodes): Add two operands form for bloop. + +2020-08-19 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Replace OBF with BF for vcmpsq, + vcmpuq and xvtlsbb. + +2020-08-18 Peter Bergner + + * ppc-opc.c (powerpc_opcodes) : Rename from this... + : ...to this. + +2020-08-12 Alex Coplan + + * aarch64-opc.c (aarch64_sys_regs): Add MPAM registers. + +2020-08-12 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-08-11 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Move cctpl, cctpm and cctph. + +2020-08-10 Przemyslaw Wirkus + + * aarch64-opc.c (aarch64_print_operand): + (aarch64_sys_reg_deprecated_p): Functions paramaters changed. + (aarch64_sys_reg_supported_p): Function removed. + (aarch64_sys_ins_reg_supported_p): Functions paramaters changed. + (aarch64_sys_ins_reg_supported_p): Merged aarch64_sys_reg_supported_p + into this function. + +2020-08-10 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Add many mtspr and mfspr extended + instructions. + +2020-08-10 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Add exser, msgsndu, msgclru. + Enable icbt for power5, miso for power8. + +2020-08-10 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Prioritise mtfprd and mtvrd over + mtvsrd, and similarly for mfvsrd. + +2020-08-04 Christian Groessler + Tadashi G. Takaoka + + * z8kgen.c (opt): Fix "sout imm16,rs" and "soutb imm16,rbs" + opcodes (special "out" to absolute address). + * z8k-opc.h: Regenerate. + +2020-07-30 H.J. Lu + + PR gas/26305 + * i386-opc.h (Prefix_Disp8): New. + (Prefix_Disp16): Likewise. + (Prefix_Disp32): Likewise. + (Prefix_Load): Likewise. + (Prefix_Store): Likewise. + (Prefix_VEX): Likewise. + (Prefix_VEX3): Likewise. + (Prefix_EVEX): Likewise. + (Prefix_REX): Likewise. + (Prefix_NoOptimize): Likewise. + * i386-opc.tbl: Use Prefix_XXX on pseudo prefixes. Add {disp16}. + * i386-tbl.h: Regenerated. + +2020-07-29 Andreas Arnez + + * s390-mkopc.c (insertExpandedMnemonic): Handle unreachable + default case with abort() instead of printing an error message and + continuing, to avoid a maybe-uninitialized warning. + +2020-07-24 Nick Clifton + + * po/de.po: Updated German translation. + +2020-07-21 Jan Beulich + + * i386-dis.c (OP_E_memory): Revert previous change. + +2020-07-15 H.J. Lu + + PR gas/26237 + * i386-dis.c (OP_E_memory): Don't display eiz with no scale + without base nor index registers. + +2020-07-15 Jan Beulich + + * i386-dis.c (putop): Move 'V' and 'W' handling. + +2020-07-15 Jan Beulich + + * i386-dis.c (dis386): Adjust 'V' description. Use P-based + construct for push/pop of register. + (putop): Honor cond when handling 'P'. Drop handling of plain + 'V'. + +2020-07-15 Jan Beulich + + * i386-dis.c (dis386): Adjust 'P', 'T', 'U', and '@' + description. Drop '&' description. Use P for push of immediate, + pushf/popf, enter, and leave. Use %LP for lret/retf. + (dis386_twobyte): Use P for push/pop of fs/gs. + (reg_table): Use P for push/pop. Use @ for near call/jmp. + (x86_64_table): Use P for far call/jmp. + (putop): Drop handling of 'U' and '&'. Move and adjust handling + of '@'. Adjust handling of 'P' and 'T'. Drop case_P and case_Q + labels. + (OP_J): Drop marking of REX_W as used for v_mode (ISA-dependent) + and dqw_mode (unconditional). + +2020-07-14 H.J. Lu + + PR gas/26237 + * i386-dis.c (OP_E_memory): Without base nor index registers, + 32-bit displacement to 64 bits. + +2020-07-14 Claudiu Zissulescu + + * arc-dis.c (print_insn_arc): Detect and emit a warning when a + faulty double register pair is detected. + +2020-07-14 Jan Beulich + + * i386-dis.c (OP_D): Print dr instead of db in Intel mode. + +2020-07-14 Jan Beulich + + * i386-dis.c (OP_R, Rm): Delete. + (MOD_0F24, MOD_0F26): Rename to ... + (X86_64_0F24, X86_64_0F26): ... respectively. + (dis386): Update 'L' and 'Z' comments. + (dis386_twobyte): Replace Rm by Em. Change opcode 0F24 and 0F26 + table references. + (mod_table): Move opcode 0F24 and 0F26 entries ... + (x86_64_table): ... here. + (putop): Drop handling of 'L'. Set modrm.mod to 3 for 'Z'. Move + 'Z' case block. + +2020-07-14 Jan Beulich + + * i386-dis.c (Rd, Rdq, MaskR): Delete. + (MOD_EVEX_0F3828_P_1, MOD_EVEX_0F382A_P_1_W_1, + MOD_EVEX_0F3838_P_1, MOD_EVEX_0F383A_P_1_W_0, + MOD_EVEX_0F387A_W_0, MOD_EVEX_0F387B_W_0, + MOD_EVEX_0F387C): New enumerators. + (reg_table): Use Edq for rdssp. + (prefix_table): Use Edq for incssp. + (mod_table): Use Rm for move to/from %tr. Use MaskE for kand*, + kandn*, knot*, kor*, kxnor*, kxor*, kadd*, kunpck*, kortest*, + ktest*, and kshift*. Use Edq / MaskE for kmov*. + * i386-dis-evex.h: Reference mod_table[] for opcode 0F387C. + * i386-dis-evex-mod.h: New entries for opcodes 0F3828, 0F382A, + 0F3838, 0F383A, 0F387A, 0F387B, and 0F387C. + * i386-dis-evex-prefix.h: Reference mod_table[] for opcodes + 0F3828_P_1 and 0F3838_P_1. + * i386-dis-evex-w.h: Reference mod_table[] for opcodes + 0F382A_P_1, 0F383A_P_1, 0F387A, and 0F387B. + +2020-07-14 Jan Beulich + + * i386-dis.c (PREFIX_0F01_REG_7_MOD_3_RM_3, + PREFIX_0FAE_REG_5_MOD_0, PREFIX_0FC3_MOD_0, PREFIX_0F38C8, + PREFIX_0F38C9, PREFIX_0F38CA, PREFIX_0F38CB, PREFIX_0F38CC, + PREFIX_0F38CD, PREFIX_0F38F9, PREFIX_0F3ACC, PREFIX_VEX_0F77, + PREFIX_VEX_0F38F2, PREFIX_VEX_0F38F3_REG_1, + PREFIX_VEX_0F38F3_REG_2, PREFIX_VEX_0F38F3_REG_3): Delete. + (MOD_0F38F9_PREFIX_0, VEX_LEN_0F77_P_0, VEX_LEN_0F38F2_P_0, + VEX_LEN_0F38F3_R_1_P_0, VEX_LEN_0F38F3_R_2_P_0, + VEX_LEN_0F38F3_R_3_P_0): Rename to ... + (MOD_0F38F9, VEX_LEN_0F77, VEX_LEN_0F38F2, VEX_LEN_0F38F3_R_1, + VEX_LEN_0F38F3_R_2, VEX_LEN_0F38F3_R_3): ... these respectively. + (reg_table, prefix_table, three_byte_table, vex_table, + vex_len_table, mod_table, rm_table): Replace / remove respective + entries. + (intel_operand_size, OP_E_register, OP_G): Avoid undue setting + of PREFIX_DATA in used_prefixes. + +2020-07-14 Jan Beulich + + * i386-dis.c (MOD_VEX_0F3A30_L_0_W_0, MOD_VEX_0F3A30_L_0_W_1, + MOD_VEX_0F3A31_L_0_W_0, MOD_VEX_0F3A31_L_0_W_1, + MOD_VEX_0F3A32_L_0_W_0, MOD_VEX_0F3A32_L_0_W_1, + MOD_VEX_0F3A33_L_0_W_0, MOD_VEX_0F3A33_L_0_W_1): Replace by ... + (MOD_VEX_0F3A30_L_0, MOD_VEX_0F3A31_L_0, + MOD_VEX_0F3A32_L_0, MOD_VEX_0F3A33_L_0): ... these. + (VEX_W_0F3A30_L_0, VEX_W_0F3A31_L_0, VEX_W_0F3A32_L_0, + VEX_W_0F3A33_L_0): Delete. + (dis386): Adjust "BW" description. + (vex_len_table): Refer to mod_table[] for opcodes 0F3A30, + 0F3A31, 0F3A32, and 0F3A33. + (vex_w_table): Delete opcode 0F3A30, 0F3A31, 0F3A32, and 0F3A33 + entries. + (mod_table): Replace opcode 0F3A30, 0F3A31, 0F3A32, and 0F3A33 + entries. + +2020-07-14 Jan Beulich + + * i386-dis.c (PREFIX_0F6C, PREFIX_0F6D, PREFIX_0F73_REG_3, + PREFIX_0F73_REG_7, PREFIX_0F3810, PREFIX_0F3814, PREFIX_0F3815, + PREFIX_0F3817, PREFIX_0F3820, PREFIX_0F3821, PREFIX_0F3822, + PREFIX_0F3823, PREFIX_0F3824, PREFIX_0F3825, PREFIX_0F3828, + PREFIX_0F3829, PREFIX_0F382A, PREFIX_0F382B, PREFIX_0F3830, + PREFIX_0F3831, PREFIX_0F3832, PREFIX_0F3833, PREFIX_0F3834, + PREFIX_0F3835, PREFIX_0F3837, PREFIX_0F3838, PREFIX_0F3839, + PREFIX_0F383A, PREFIX_0F383B, PREFIX_0F383C, PREFIX_0F383D, + PREFIX_0F383E, PREFIX_0F383F, PREFIX_0F3840, PREFIX_0F3841, + PREFIX_0F3880, PREFIX_0F3881, PREFIX_0F3882, PREFIX_0F38CF, + PREFIX_0F38DB, PREFIX_0F38DC, PREFIX_0F38DD, PREFIX_0F38DE, + PREFIX_0F38DF, PREFIX_0F38F5, PREFIX_0F3A08, PREFIX_0F3A09, + PREFIX_0F3A0A, PREFIX_0F3A0B, PREFIX_0F3A0C, PREFIX_0F3A0D, + PREFIX_0F3A0E, PREFIX_0F3A14, PREFIX_0F3A15, PREFIX_0F3A16, + PREFIX_0F3A17, PREFIX_0F3A20, PREFIX_0F3A21, PREFIX_0F3A22, + PREFIX_0F3A40, PREFIX_0F3A41, PREFIX_0F3A42, PREFIX_0F3A44, + PREFIX_0F3A60, PREFIX_0F3A61, PREFIX_0F3A62, PREFIX_0F3A63, + PREFIX_0F3ACE, PREFIX_0F3ACF, PREFIX_0F3ADF, PREFIX_VEX_0F60, + PREFIX_VEX_0F61, PREFIX_VEX_0F62, PREFIX_VEX_0F63, + PREFIX_VEX_0F64, PREFIX_VEX_0F65, PREFIX_VEX_0F66, + PREFIX_VEX_0F67, PREFIX_VEX_0F68, PREFIX_VEX_0F69, + PREFIX_VEX_0F6A, PREFIX_VEX_0F6B, PREFIX_VEX_0F6C, + PREFIX_VEX_0F6D, PREFIX_VEX_0F6E, PREFIX_VEX_0F71_REG_2, + PREFIX_VEX_0F71_REG_4, PREFIX_VEX_0F71_REG_6, + PREFIX_VEX_0F72_REG_2, PREFIX_VEX_0F72_REG_4, + PREFIX_VEX_0F72_REG_6, PREFIX_VEX_0F73_REG_2, + PREFIX_VEX_0F73_REG_3, PREFIX_VEX_0F73_REG_6, + PREFIX_VEX_0F73_REG_7, PREFIX_VEX_0F74, + PREFIX_VEX_0F75, PREFIX_VEX_0F76, PREFIX_VEX_0FC4, + PREFIX_VEX_0FC5, PREFIX_VEX_0FD1, PREFIX_VEX_0FD2, + PREFIX_VEX_0FD3, PREFIX_VEX_0FD4, PREFIX_VEX_0FD5, + PREFIX_VEX_0FD6, PREFIX_VEX_0FD7, PREFIX_VEX_0FD8, + PREFIX_VEX_0FD9, PREFIX_VEX_0FDA, PREFIX_VEX_0FDB, + PREFIX_VEX_0FDC, PREFIX_VEX_0FDD, PREFIX_VEX_0FDE, + PREFIX_VEX_0FDF, PREFIX_VEX_0FE0, PREFIX_VEX_0FE1, + PREFIX_VEX_0FE2, PREFIX_VEX_0FE3, PREFIX_VEX_0FE4, + PREFIX_VEX_0FE5, PREFIX_VEX_0FE7, PREFIX_VEX_0FE8, + PREFIX_VEX_0FE9, PREFIX_VEX_0FEA, PREFIX_VEX_0FEB, + PREFIX_VEX_0FEC, PREFIX_VEX_0FED, PREFIX_VEX_0FEE, + PREFIX_VEX_0FEF, PREFIX_VEX_0FF1, PREFIX_VEX_0FF2, + PREFIX_VEX_0FF3, PREFIX_VEX_0FF4, PREFIX_VEX_0FF5, + PREFIX_VEX_0FF6, PREFIX_VEX_0FF7, PREFIX_VEX_0FF8, + PREFIX_VEX_0FF9, PREFIX_VEX_0FFA, PREFIX_VEX_0FFB, + PREFIX_VEX_0FFC, PREFIX_VEX_0FFD, PREFIX_VEX_0FFE, + PREFIX_VEX_0F3800, PREFIX_VEX_0F3801, PREFIX_VEX_0F3802, + PREFIX_VEX_0F3803, PREFIX_VEX_0F3804, PREFIX_VEX_0F3805, + PREFIX_VEX_0F3806, PREFIX_VEX_0F3807, PREFIX_VEX_0F3808, + PREFIX_VEX_0F3809, PREFIX_VEX_0F380A, PREFIX_VEX_0F380B, + PREFIX_VEX_0F380C, PREFIX_VEX_0F380D, PREFIX_VEX_0F380E, + PREFIX_VEX_0F380F, PREFIX_VEX_0F3813, PREFIX_VEX_0F3816, + PREFIX_VEX_0F3817, PREFIX_VEX_0F3818, PREFIX_VEX_0F3819, + PREFIX_VEX_0F381A, PREFIX_VEX_0F381C, PREFIX_VEX_0F381D, + PREFIX_VEX_0F381E, PREFIX_VEX_0F3820, PREFIX_VEX_0F3821, + PREFIX_VEX_0F3822, PREFIX_VEX_0F3823, PREFIX_VEX_0F3824, + PREFIX_VEX_0F3825, PREFIX_VEX_0F3828, PREFIX_VEX_0F3829, + PREFIX_VEX_0F382A, PREFIX_VEX_0F382B, PREFIX_VEX_0F382C, + PREFIX_VEX_0F382D, PREFIX_VEX_0F382E, PREFIX_VEX_0F382F, + PREFIX_VEX_0F3830, PREFIX_VEX_0F3831, PREFIX_VEX_0F3832, + PREFIX_VEX_0F3833, PREFIX_VEX_0F3834, PREFIX_VEX_0F3835, + PREFIX_VEX_0F3836, PREFIX_VEX_0F3837, PREFIX_VEX_0F3838, + PREFIX_VEX_0F3839, PREFIX_VEX_0F383A, PREFIX_VEX_0F383B, + PREFIX_VEX_0F383C, PREFIX_VEX_0F383D, PREFIX_VEX_0F383E, + PREFIX_VEX_0F383F, PREFIX_VEX_0F3840, PREFIX_VEX_0F3841, + PREFIX_VEX_0F3845, PREFIX_VEX_0F3846, PREFIX_VEX_0F3847, + PREFIX_VEX_0F3858, PREFIX_VEX_0F3859, PREFIX_VEX_0F385A, + PREFIX_VEX_0F3878, PREFIX_VEX_0F3879, PREFIX_VEX_0F388C, + PREFIX_VEX_0F388E, PREFIX_VEX_0F3890, PREFIX_VEX_0F3891, + PREFIX_VEX_0F3892, PREFIX_VEX_0F3893, PREFIX_VEX_0F3896, + PREFIX_VEX_0F3897, PREFIX_VEX_0F3898, PREFIX_VEX_0F3899, + PREFIX_VEX_0F389A, PREFIX_VEX_0F389B, PREFIX_VEX_0F389C, + PREFIX_VEX_0F389D, PREFIX_VEX_0F389E, PREFIX_VEX_0F389F, + PREFIX_VEX_0F38A6, PREFIX_VEX_0F38A7, PREFIX_VEX_0F38A8, + PREFIX_VEX_0F38A9, PREFIX_VEX_0F38AA, PREFIX_VEX_0F38AB, + PREFIX_VEX_0F38AC, PREFIX_VEX_0F38AD, PREFIX_VEX_0F38AE, + PREFIX_VEX_0F38AF, PREFIX_VEX_0F38B6, PREFIX_VEX_0F38B7, + PREFIX_VEX_0F38B8, PREFIX_VEX_0F38B9, PREFIX_VEX_0F38BA, + PREFIX_VEX_0F38BB, PREFIX_VEX_0F38BC, PREFIX_VEX_0F38BD, + PREFIX_VEX_0F38BE, PREFIX_VEX_0F38BF, PREFIX_VEX_0F38CF, + PREFIX_VEX_0F38DB, PREFIX_VEX_0F38DC, PREFIX_VEX_0F38DD, + PREFIX_VEX_0F38DE, PREFIX_VEX_0F38DF, PREFIX_VEX_0F3A00, + PREFIX_VEX_0F3A01, PREFIX_VEX_0F3A02, PREFIX_VEX_0F3A04, + PREFIX_VEX_0F3A05, PREFIX_VEX_0F3A06, PREFIX_VEX_0F3A08, + PREFIX_VEX_0F3A09, PREFIX_VEX_0F3A0A, PREFIX_VEX_0F3A0B, + PREFIX_VEX_0F3A0C, PREFIX_VEX_0F3A0D, PREFIX_VEX_0F3A0E, + PREFIX_VEX_0F3A0F, PREFIX_VEX_0F3A14, PREFIX_VEX_0F3A15, + PREFIX_VEX_0F3A16, PREFIX_VEX_0F3A17, PREFIX_VEX_0F3A18, + PREFIX_VEX_0F3A19, PREFIX_VEX_0F3A1D, PREFIX_VEX_0F3A20, + PREFIX_VEX_0F3A21, PREFIX_VEX_0F3A22, PREFIX_VEX_0F3A30, + PREFIX_VEX_0F3A31, PREFIX_VEX_0F3A32, PREFIX_VEX_0F3A33, + PREFIX_VEX_0F3A38, PREFIX_VEX_0F3A39, PREFIX_VEX_0F3A40, + PREFIX_VEX_0F3A41, PREFIX_VEX_0F3A42, PREFIX_VEX_0F3A44, + PREFIX_VEX_0F3A46, PREFIX_VEX_0F3A48, PREFIX_VEX_0F3A49, + PREFIX_VEX_0F3A4A, PREFIX_VEX_0F3A4B, PREFIX_VEX_0F3A4C, + PREFIX_VEX_0F3A5C, PREFIX_VEX_0F3A5D, PREFIX_VEX_0F3A5E, + PREFIX_VEX_0F3A5F, PREFIX_VEX_0F3A60, PREFIX_VEX_0F3A61, + PREFIX_VEX_0F3A62, PREFIX_VEX_0F3A63, PREFIX_VEX_0F3A68, + PREFIX_VEX_0F3A69, PREFIX_VEX_0F3A6A, PREFIX_VEX_0F3A6B, + PREFIX_VEX_0F3A6C, PREFIX_VEX_0F3A6D, PREFIX_VEX_0F3A6E, + PREFIX_VEX_0F3A6F, PREFIX_VEX_0F3A78, PREFIX_VEX_0F3A79, + PREFIX_VEX_0F3A7A, PREFIX_VEX_0F3A7B, PREFIX_VEX_0F3A7C, + PREFIX_VEX_0F3A7D, PREFIX_VEX_0F3A7E, PREFIX_VEX_0F3A7F, + PREFIX_VEX_0F3ACE, PREFIX_VEX_0F3ACF, PREFIX_VEX_0F3ADF, + PREFIX_EVEX_0F64, PREFIX_EVEX_0F65, PREFIX_EVEX_0F66, + PREFIX_EVEX_0F6E, PREFIX_EVEX_0F71_REG_2, + PREFIX_EVEX_0F71_REG_4, PREFIX_EVEX_0F71_REG_6, + PREFIX_EVEX_0F72_REG_0, PREFIX_EVEX_0F72_REG_1, + PREFIX_EVEX_0F72_REG_2, PREFIX_EVEX_0F72_REG_4, + PREFIX_EVEX_0F72_REG_6, PREFIX_EVEX_0F73_REG_2, + PREFIX_EVEX_0F73_REG_3, PREFIX_EVEX_0F73_REG_6, + PREFIX_EVEX_0F73_REG_7, PREFIX_EVEX_0F74, PREFIX_EVEX_0F75, + PREFIX_EVEX_0F76, PREFIX_EVEX_0FC4, PREFIX_EVEX_0FC5, + PREFIX_EVEX_0FD6, PREFIX_EVEX_0FDB, PREFIX_EVEX_0FDF, + PREFIX_EVEX_0FE2, PREFIX_EVEX_0FE7, PREFIX_EVEX_0FEB, + PREFIX_EVEX_0FEF, PREFIX_EVEX_0F380D, PREFIX_EVEX_0F3816, + PREFIX_EVEX_0F3819, PREFIX_EVEX_0F381A, PREFIX_EVEX_0F381B, + PREFIX_EVEX_0F381E, PREFIX_EVEX_0F381F, PREFIX_EVEX_0F382C, + PREFIX_EVEX_0F382D, PREFIX_EVEX_0F3836, PREFIX_EVEX_0F3837, + PREFIX_EVEX_0F383B, PREFIX_EVEX_0F383D, PREFIX_EVEX_0F383F, + PREFIX_EVEX_0F3840, PREFIX_EVEX_0F3842, PREFIX_EVEX_0F3843, + PREFIX_EVEX_0F3844, PREFIX_EVEX_0F3845, PREFIX_EVEX_0F3846, + PREFIX_EVEX_0F3847, PREFIX_EVEX_0F384C, PREFIX_EVEX_0F384D, + PREFIX_EVEX_0F384E, PREFIX_EVEX_0F384F, PREFIX_EVEX_0F3850, + PREFIX_EVEX_0F3851, PREFIX_EVEX_0F3854, PREFIX_EVEX_0F3855, + PREFIX_EVEX_0F3859, PREFIX_EVEX_0F385A, PREFIX_EVEX_0F385B, + PREFIX_EVEX_0F3862, PREFIX_EVEX_0F3863, PREFIX_EVEX_0F3864, + PREFIX_EVEX_0F3865, PREFIX_EVEX_0F3866, PREFIX_EVEX_0F3870, + PREFIX_EVEX_0F3871, PREFIX_EVEX_0F3873, PREFIX_EVEX_0F3875, + PREFIX_EVEX_0F3876, PREFIX_EVEX_0F3877, PREFIX_EVEX_0F387A, + PREFIX_EVEX_0F387B, PREFIX_EVEX_0F387C, PREFIX_EVEX_0F387D, + PREFIX_EVEX_0F387E, PREFIX_EVEX_0F387F, PREFIX_EVEX_0F3883, + PREFIX_EVEX_0F3888, PREFIX_EVEX_0F3889, PREFIX_EVEX_0F388A, + PREFIX_EVEX_0F388B, PREFIX_EVEX_0F388D, PREFIX_EVEX_0F388F, + PREFIX_EVEX_0F3890, PREFIX_EVEX_0F3891, PREFIX_EVEX_0F3892, + PREFIX_EVEX_0F3893, PREFIX_EVEX_0F38A0, PREFIX_EVEX_0F38A1, + PREFIX_EVEX_0F38A2, PREFIX_EVEX_0F38A3, PREFIX_EVEX_0F38B4, + PREFIX_EVEX_0F38B5, PREFIX_EVEX_0F38C4, + PREFIX_EVEX_0F38C6_REG_1, PREFIX_EVEX_0F38C6_REG_2, + PREFIX_EVEX_0F38C6_REG_5, PREFIX_EVEX_0F38C6_REG_6, + PREFIX_EVEX_0F38C7_REG_1, PREFIX_EVEX_0F38C7_REG_2, + PREFIX_EVEX_0F38C7_REG_5, PREFIX_EVEX_0F38C7_REG_6, + PREFIX_EVEX_0F38C8, PREFIX_EVEX_0F38CA, PREFIX_EVEX_0F38CB, + PREFIX_EVEX_0F38CC, PREFIX_EVEX_0F38CD, PREFIX_EVEX_0F3A00, + PREFIX_EVEX_0F3A01, PREFIX_EVEX_0F3A03, PREFIX_EVEX_0F3A05, + PREFIX_EVEX_0F3A08, PREFIX_EVEX_0F3A09, PREFIX_EVEX_0F3A0A, + PREFIX_EVEX_0F3A0B, PREFIX_EVEX_0F3A14, PREFIX_EVEX_0F3A15, + PREFIX_EVEX_0F3A16, PREFIX_EVEX_0F3A17, PREFIX_EVEX_0F3A18, + PREFIX_EVEX_0F3A19, PREFIX_EVEX_0F3A1A, PREFIX_EVEX_0F3A1B, + PREFIX_EVEX_0F3A1E, PREFIX_EVEX_0F3A1F, PREFIX_EVEX_0F3A20, + PREFIX_EVEX_0F3A21, PREFIX_EVEX_0F3A22, PREFIX_EVEX_0F3A23, + PREFIX_EVEX_0F3A25, PREFIX_EVEX_0F3A26, PREFIX_EVEX_0F3A27, + PREFIX_EVEX_0F3A38, PREFIX_EVEX_0F3A39, PREFIX_EVEX_0F3A3A, + PREFIX_EVEX_0F3A3B, PREFIX_EVEX_0F3A3E, PREFIX_EVEX_0F3A3F, + PREFIX_EVEX_0F3A42, PREFIX_EVEX_0F3A43, PREFIX_EVEX_0F3A50, + PREFIX_EVEX_0F3A51, PREFIX_EVEX_0F3A54, PREFIX_EVEX_0F3A55, + PREFIX_EVEX_0F3A56, PREFIX_EVEX_0F3A57, PREFIX_EVEX_0F3A66, + PREFIX_EVEX_0F3A67, PREFIX_EVEX_0F3A70, PREFIX_EVEX_0F3A71, + PREFIX_EVEX_0F3A72, PREFIX_EVEX_0F3A73): Delete. + (MOD_0F382A_PREFIX_2, MOD_0F38F5_PREFIX_2, + MOD_VEX_0FD7_PREFIX_2, MOD_VEX_0FE7_PREFIX_2, + MOD_VEX_0F381A_PREFIX_2, MOD_VEX_0F382A_PREFIX_2, + MOD_VEX_0F382C_PREFIX_2, MOD_VEX_0F382D_PREFIX_2, + MOD_VEX_0F382E_PREFIX_2, MOD_VEX_0F382F_PREFIX_2, + MOD_VEX_0F385A_PREFIX_2, MOD_VEX_0F388C_PREFIX_2, + MOD_VEX_0F388E_PREFIX_2, MOD_VEX_W_0_0F3A30_P_2_LEN_0, + MOD_VEX_W_1_0F3A30_P_2_LEN_0, MOD_VEX_W_0_0F3A31_P_2_LEN_0, + MOD_VEX_W_1_0F3A31_P_2_LEN_0, MOD_VEX_W_0_0F3A32_P_2_LEN_0, + MOD_VEX_W_1_0F3A32_P_2_LEN_0, MOD_VEX_W_0_0F3A33_P_2_LEN_0, + MOD_VEX_W_1_0F3A33_P_2_LEN_0, MOD_EVEX_0F381A_P_2_W_0, + MOD_EVEX_0F381A_P_2_W_1, MOD_EVEX_0F381B_P_2_W_0, + MOD_EVEX_0F381B_P_2_W_1, MOD_EVEX_0F385A_P_2_W_0, + MOD_EVEX_0F385A_P_2_W_1, MOD_EVEX_0F385B_P_2_W_0, + MOD_EVEX_0F385B_P_2_W_1, VEX_LEN_0F6E_P_2, + VEX_LEN_0FC4_P_2, VEX_LEN_0FC5_P_2, VEX_LEN_0FD6_P_2, + VEX_LEN_0FF7_P_2, VEX_LEN_0F3816_P_2, VEX_LEN_0F3819_P_2, + VEX_LEN_0F381A_P_2_M_0, VEX_LEN_0F3836_P_2, + VEX_LEN_0F3841_P_2, VEX_LEN_0F385A_P_2_M_0, + VEX_LEN_0F38DB_P_2, VEX_LEN_0F3A00_P_2, VEX_LEN_0F3A01_P_2, + VEX_LEN_0F3A06_P_2, VEX_LEN_0F3A14_P_2, VEX_LEN_0F3A15_P_2, + VEX_LEN_0F3A16_P_2, VEX_LEN_0F3A17_P_2, VEX_LEN_0F3A18_P_2, + VEX_LEN_0F3A19_P_2, VEX_LEN_0F3A20_P_2, VEX_LEN_0F3A21_P_2, + VEX_LEN_0F3A22_P_2, VEX_LEN_0F3A30_P_2, VEX_LEN_0F3A31_P_2, + VEX_LEN_0F3A32_P_2, VEX_LEN_0F3A33_P_2, VEX_LEN_0F3A38_P_2, + VEX_LEN_0F3A39_P_2, VEX_LEN_0F3A41_P_2, VEX_LEN_0F3A46_P_2, + VEX_LEN_0F3A60_P_2, VEX_LEN_0F3A61_P_2, VEX_LEN_0F3A62_P_2, + VEX_LEN_0F3A63_P_2, VEX_LEN_0F3ADF_P_2, EVEX_LEN_0F6E_P_2, + EVEX_LEN_0FC4_P_2, EVEX_LEN_0FC5_P_2, EVEX_LEN_0FD6_P_2, + EVEX_LEN_0F3816_P_2, EVEX_LEN_0F3819_P_2_W_0, + EVEX_LEN_0F3819_P_2_W_1, EVEX_LEN_0F381A_P_2_W_0_M_0, + EVEX_LEN_0F381A_P_2_W_1_M_0, EVEX_LEN_0F381B_P_2_W_0_M_0, + EVEX_LEN_0F381B_P_2_W_1_M_0, EVEX_LEN_0F3836_P_2, + EVEX_LEN_0F385A_P_2_W_0_M_0, EVEX_LEN_0F385A_P_2_W_1_M_0, + EVEX_LEN_0F385B_P_2_W_0_M_0, EVEX_LEN_0F385B_P_2_W_1_M_0, + EVEX_LEN_0F38C6_REG_1_PREFIX_2, EVEX_LEN_0F38C6_REG_2_PREFIX_2, + EVEX_LEN_0F38C6_REG_5_PREFIX_2, EVEX_LEN_0F38C6_REG_6_PREFIX_2, + EVEX_LEN_0F38C7_R_1_P_2_W_0, EVEX_LEN_0F38C7_R_1_P_2_W_1, + EVEX_LEN_0F38C7_R_2_P_2_W_0, EVEX_LEN_0F38C7_R_2_P_2_W_1, + EVEX_LEN_0F38C7_R_5_P_2_W_0, EVEX_LEN_0F38C7_R_5_P_2_W_1, + EVEX_LEN_0F38C7_R_6_P_2_W_0, EVEX_LEN_0F38C7_R_6_P_2_W_1, + EVEX_LEN_0F3A00_P_2_W_1, EVEX_LEN_0F3A01_P_2_W_1, + EVEX_LEN_0F3A14_P_2, EVEX_LEN_0F3A15_P_2, EVEX_LEN_0F3A16_P_2, + EVEX_LEN_0F3A17_P_2, EVEX_LEN_0F3A18_P_2_W_0, + EVEX_LEN_0F3A18_P_2_W_1, EVEX_LEN_0F3A19_P_2_W_0, + EVEX_LEN_0F3A19_P_2_W_1, EVEX_LEN_0F3A1A_P_2_W_0, + EVEX_LEN_0F3A1A_P_2_W_1, EVEX_LEN_0F3A1B_P_2_W_0, + EVEX_LEN_0F3A1B_P_2_W_1, EVEX_LEN_0F3A20_P_2, + EVEX_LEN_0F3A21_P_2_W_0, EVEX_LEN_0F3A22_P_2, + EVEX_LEN_0F3A23_P_2_W_0, EVEX_LEN_0F3A23_P_2_W_1, + EVEX_LEN_0F3A38_P_2_W_0, EVEX_LEN_0F3A38_P_2_W_1, + EVEX_LEN_0F3A39_P_2_W_0, EVEX_LEN_0F3A39_P_2_W_1, + EVEX_LEN_0F3A3A_P_2_W_0, EVEX_LEN_0F3A3A_P_2_W_1, + EVEX_LEN_0F3A3B_P_2_W_0, EVEX_LEN_0F3A3B_P_2_W_1, + EVEX_LEN_0F3A43_P_2_W_0, EVEX_LEN_0F3A43_P_2_W_1 + VEX_W_0F380C_P_2, VEX_W_0F380D_P_2, VEX_W_0F380E_P_2, + VEX_W_0F380F_P_2, VEX_W_0F3813_P_2, VEX_W_0F3816_P_2, + VEX_W_0F3818_P_2, VEX_W_0F3819_P_2, + VEX_W_0F381A_P_2_M_0_L_0, VEX_W_0F382C_P_2_M_0, + VEX_W_0F382D_P_2_M_0, VEX_W_0F382E_P_2_M_0, + VEX_W_0F382F_P_2_M_0, VEX_W_0F3836_P_2, + VEX_W_0F3846_P_2, VEX_W_0F3858_P_2, VEX_W_0F3859_P_2, + VEX_W_0F385A_P_2_M_0_L_0, VEX_W_0F3878_P_2, + VEX_W_0F3879_P_2, VEX_W_0F38CF_P_2, VEX_W_0F3A00_P_2, + VEX_W_0F3A01_P_2, VEX_W_0F3A02_P_2, VEX_W_0F3A04_P_2, + VEX_W_0F3A05_P_2, VEX_W_0F3A06_P_2_L_0, + VEX_W_0F3A18_P_2_L_0, VEX_W_0F3A19_P_2_L_0, + VEX_W_0F3A1D_P_2, VEX_W_0F3A30_P_2_LEN_0, + VEX_W_0F3A31_P_2_LEN_0, VEX_W_0F3A32_P_2_LEN_0, + VEX_W_0F3A33_P_2_LEN_0, VEX_W_0F3A38_P_2_L_0, + VEX_W_0F3A39_P_2_L_0, VEX_W_0F3A46_P_2_L_0, + VEX_W_0F3A4A_P_2, VEX_W_0F3A4B_P_2, VEX_W_0F3A4C_P_2, + VEX_W_0F3ACE_P_2, VEX_W_0F3ACF_P_2, EVEX_W_0F66_P_2, + EVEX_W_0F72_R_2_P_2, EVEX_W_0F72_R_6_P_2, + EVEX_W_0F73_R_2_P_2, EVEX_W_0F73_R_6_P_2, + EVEX_W_0F76_P_2, EVEX_W_0FD6_P_2, EVEX_W_0FE7_P_2, + EVEX_W_0F380D_P_2, EVEX_W_0F3819_P_2, + EVEX_W_0F381A_P_2, EVEX_W_0F381B_P_2, + EVEX_W_0F381E_P_2, EVEX_W_0F381F_P_2, + EVEX_W_0F3837_P_2, EVEX_W_0F3859_P_2, + EVEX_W_0F385A_P_2, EVEX_W_0F385B_P_2, + EVEX_W_0F3870_P_2, EVEX_W_0F387A_P_2, + EVEX_W_0F387B_P_2, EVEX_W_0F3883_P_2, + EVEX_W_0F3891_P_2, EVEX_W_0F3893_P_2, + EVEX_W_0F38A1_P_2, EVEX_W_0F38A3_P_2, + EVEX_W_0F38C7_R_1_P_2, EVEX_W_0F38C7_R_2_P_2, + EVEX_W_0F38C7_R_5_P_2, EVEX_W_0F38C7_R_6_P_2, + EVEX_W_0F3A00_P_2, EVEX_W_0F3A01_P_2, + EVEX_W_0F3A05_P_2, EVEX_W_0F3A08_P_2, + EVEX_W_0F3A09_P_2, EVEX_W_0F3A0A_P_2, + EVEX_W_0F3A0B_P_2, EVEX_W_0F3A18_P_2, + EVEX_W_0F3A19_P_2, EVEX_W_0F3A1A_P_2, + EVEX_W_0F3A1B_P_2, EVEX_W_0F3A21_P_2, + EVEX_W_0F3A23_P_2, EVEX_W_0F3A38_P_2, + EVEX_W_0F3A39_P_2, EVEX_W_0F3A3A_P_2, + EVEX_W_0F3A3B_P_2, EVEX_W_0F3A42_P_2, + EVEX_W_0F3A43_P_2, EVEX_W_0F3A70_P_2, + EVEX_W_0F3A72_P_2): Rename to ... + (MOD_0F382A, MOD_0F38F5, MOD_VEX_0FD7, MOD_VEX_0FE7, + MOD_VEX_0F381A, MOD_VEX_0F382A, MOD_VEX_0F382C, MOD_VEX_0F382D, + MOD_VEX_0F382E, MOD_VEX_0F382F, MOD_VEX_0F385A, MOD_VEX_0F388C, + MOD_VEX_0F388E, MOD_VEX_0F3A30_L_0_W_0, + MOD_VEX_0F3A30_L_0_W_1, MOD_VEX_0F3A31_L_0_W_0, + MOD_VEX_0F3A31_L_0_W_1, MOD_VEX_0F3A32_L_0_W_0, + MOD_VEX_0F3A32_L_0_W_1, MOD_VEX_0F3A33_L_0_W_0, + MOD_VEX_0F3A33_L_0_W_1, MOD_EVEX_0F381A_W_0, + MOD_EVEX_0F381A_W_1, MOD_EVEX_0F381B_W_0, MOD_EVEX_0F381B_W_1, + MOD_EVEX_0F385A_W_0, MOD_EVEX_0F385A_W_1, MOD_EVEX_0F385B_W_0, + MOD_EVEX_0F385B_W_1, VEX_LEN_0F6E, VEX_LEN_0FC4, VEX_LEN_0FC5, + VEX_LEN_0FD6, VEX_LEN_0FF7, VEX_LEN_0F3816, VEX_LEN_0F3819, + VEX_LEN_0F381A_M_0, VEX_LEN_0F3836, VEX_LEN_0F3841, + VEX_LEN_0F385A_M_0, VEX_LEN_0F38DB, VEX_LEN_0F3A00, + VEX_LEN_0F3A01, VEX_LEN_0F3A06, VEX_LEN_0F3A14, VEX_LEN_0F3A15, + VEX_LEN_0F3A16, VEX_LEN_0F3A17, VEX_LEN_0F3A18, VEX_LEN_0F3A19, + VEX_LEN_0F3A20, VEX_LEN_0F3A21, VEX_LEN_0F3A22, VEX_LEN_0F3A30, + VEX_LEN_0F3A31, VEX_LEN_0F3A32, VEX_LEN_0F3A33, VEX_LEN_0F3A38, + VEX_LEN_0F3A39, VEX_LEN_0F3A41, VEX_LEN_0F3A46, VEX_LEN_0F3A60, + VEX_LEN_0F3A61, VEX_LEN_0F3A62, VEX_LEN_0F3A63, VEX_LEN_0F3ADF, + EVEX_LEN_0F6E, EVEX_LEN_0FC4, EVEX_LEN_0FC5, EVEX_LEN_0FD6, + EVEX_LEN_0F3816, EVEX_LEN_0F3819_W_0, EVEX_LEN_0F3819_W_1, + EVEX_LEN_0F381A_W_0_M_0, EVEX_LEN_0F381A_W_1_M_0, + EVEX_LEN_0F381B_W_0_M_0, EVEX_LEN_0F381B_W_1_M_0, + EVEX_LEN_0F3836, EVEX_LEN_0F385A_W_0_M_0, + EVEX_LEN_0F385A_W_1_M_0, EVEX_LEN_0F385B_W_0_M_0, + EVEX_LEN_0F385B_W_1_M_0, EVEX_LEN_0F38C6_R_1_M_0, + EVEX_LEN_0F38C6_R_2_M_0, EVEX_LEN_0F38C6_R_5_M_0, + EVEX_LEN_0F38C6_R_6_M_0, EVEX_LEN_0F38C7_R_1_M_0_W_0, + EVEX_LEN_0F38C7_R_1_M_0_W_1, EVEX_LEN_0F38C7_R_2_M_0_W_0, + EVEX_LEN_0F38C7_R_2_M_0_W_1, EVEX_LEN_0F38C7_R_5_M_0_W_0, + EVEX_LEN_0F38C7_R_5_M_0_W_1, EVEX_LEN_0F38C7_R_6_M_0_W_0, + EVEX_LEN_0F38C7_R_6_M_0_W_1, EVEX_LEN_0F3A00_W_1, + EVEX_LEN_0F3A01_W_1, EVEX_LEN_0F3A14, EVEX_LEN_0F3A15, + EVEX_LEN_0F3A16, EVEX_LEN_0F3A17, EVEX_LEN_0F3A18_W_0, + EVEX_LEN_0F3A18_W_1, EVEX_LEN_0F3A19_W_0, + EVEX_LEN_0F3A19_W_1, EVEX_LEN_0F3A1A_W_0, + EVEX_LEN_0F3A1A_W_1, EVEX_LEN_0F3A1B_W_0, + EVEX_LEN_0F3A1B_W_1, EVEX_LEN_0F3A20, EVEX_LEN_0F3A21_W_0, + EVEX_LEN_0F3A22, EVEX_LEN_0F3A23_W_0, EVEX_LEN_0F3A23_W_1, + EVEX_LEN_0F3A38_W_0, EVEX_LEN_0F3A38_W_1, + EVEX_LEN_0F3A39_W_0, EVEX_LEN_0F3A39_W_1, + EVEX_LEN_0F3A3A_W_0, EVEX_LEN_0F3A3A_W_1, + EVEX_LEN_0F3A3B_W_0, EVEX_LEN_0F3A3B_W_1, + EVEX_LEN_0F3A43_W_0, EVEX_LEN_0F3A43_W_1 + VEX_W_0F380C, VEX_W_0F380D, VEX_W_0F380E, VEX_W_0F380F, + VEX_W_0F3813, VEX_W_0F3816_L_1, VEX_W_0F3818, + VEX_W_0F3819_L_1, VEX_W_0F381A_M_0_L_1, VEX_W_0F382C_M_0, + VEX_W_0F382D_M_0, VEX_W_0F382E_M_0, VEX_W_0F382F_M_0, + VEX_W_0F3836, VEX_W_0F3846, VEX_W_0F3858, VEX_W_0F3859, + VEX_W_0F385A_M_0_L_0, VEX_W_0F3878, VEX_W_0F3879, + VEX_W_0F38CF, VEX_W_0F3A00_L_1, VEX_W_0F3A01_L_1, + VEX_W_0F3A02, VEX_W_0F3A04, VEX_W_0F3A05, VEX_W_0F3A06_L_1, + VEX_W_0F3A18_L_1, VEX_W_0F3A19_L_1, VEX_W_0F3A1D, + VEX_W_0F3A30_L_0, VEX_W_0F3A31_L_0, VEX_W_0F3A32_L_0, + VEX_W_0F3A33_L_0, VEX_W_0F3A38_L_1, VEX_W_0F3A39_L_1, + VEX_W_0F3A46_L_1, VEX_W_0F3A4A, VEX_W_0F3A4B, VEX_W_0F3A4C, + VEX_W_0F3ACE, VEX_W_0F3ACF, EVEX_W_0F66, EVEX_W_0F72_R_2, + EVEX_W_0F72_R_6, EVEX_W_0F73_R_2, EVEX_W_0F73_R_6, + EVEX_W_0F76, EVEX_W_0FD6_L_0, EVEX_W_0FE7, EVEX_W_0F380D, + EVEX_W_0F3819, EVEX_W_0F381A, EVEX_W_0F381B, EVEX_W_0F381E, + EVEX_W_0F381F, EVEX_W_0F3837, EVEX_W_0F3859, EVEX_W_0F385A, + EVEX_W_0F385B, EVEX_W_0F3870, EVEX_W_0F387A, EVEX_W_0F387B, + EVEX_W_0F3883, EVEX_W_0F3891, EVEX_W_0F3893, EVEX_W_0F38A1, + EVEX_W_0F38A3, EVEX_W_0F38C7_R_1_M_0, + EVEX_W_0F38C7_R_2_M_0, EVEX_W_0F38C7_R_5_M_0, + EVEX_W_0F38C7_R_6_M_0, EVEX_W_0F3A00, EVEX_W_0F3A01, + EVEX_W_0F3A05, EVEX_W_0F3A08, EVEX_W_0F3A09, EVEX_W_0F3A0A, + EVEX_W_0F3A0B, EVEX_W_0F3A18, EVEX_W_0F3A19, EVEX_W_0F3A1A, + EVEX_W_0F3A1B, EVEX_W_0F3A21, EVEX_W_0F3A23, EVEX_W_0F3A38, + EVEX_W_0F3A39, EVEX_W_0F3A3A, EVEX_W_0F3A3B, EVEX_W_0F3A42, + EVEX_W_0F3A43, EVEX_W_0F3A70, EVEX_W_0F3A72): ... these + respectively. + (dis386_twobyte, three_byte_table, vex_table, vex_len_table, + vex_w_table, mod_table): Replace / remove respective entries. + (print_insn): Move up dp->prefix_requirement handling. Handle + PREFIX_DATA. + * i386-dis-evex.h, i386-dis-evex-len.h, i386-dis-evex-mod.h, + i386-dis-evex-prefix.h, i386-dis-evex-reg.h, i386-dis-evex-w.h: + Replace / remove respective entries. + +2020-07-14 Jan Beulich + + * i386-dis.c (PREFIX_EVEX_0F2C, PREFIX_EVEX_0F2D, + PREFIX_EVEX_0F2E, PREFIX_EVEX_0F2F): Delete. + (prefix_table): Add EXxEVexS operand to vcvttss2si, vcvttsd2si, + vcvtss2si, vcvtsd2si, vucomiss, and vucomisd table entries. + Retain X macro and PREFIX_OPCODE use from tjhe EVEX table for + the latter two. + * i386-dis-evex.h (evex_table): Reference VEX table for opcodes + 0F2C, 0F2D, 0F2E, and 0F2F. + * i386-dis-evex-prefix.h: Delete opcode 0F2C, 0F2D, 0F2E, and + 0F2F table entries. + +2020-07-14 Jan Beulich + + * i386-dis.c (OP_VexR, VexScalarR): New. + (OP_EX_Vex, OP_XMM_Vex, EXdVexScalarS, EXqVexScalarS, + XMVexScalar, d_scalar_swap_mode, q_scalar_swap_mode, + need_vex_reg): Delete. + (prefix_table): Replace VexScalar by VexScalarR and + XMVexScalar by XMScalar for vmovss and vmovsd. Replace + EXdVexScalarS by EXdS and EXqVexScalarS by EXqS. + (vex_len_table): Replace EXqVexScalarS by EXqS. + (get_valid_dis386): Don't set need_vex_reg. + (print_insn): Don't initialize need_vex_reg. + (intel_operand_size, OP_E_memory): Drop d_scalar_swap_mode and + q_scalar_swap_mode cases. + (OP_EX): Don't check for d_scalar_swap_mode and + q_scalar_swap_mode. + (OP_VEX): Done check need_vex_reg. + * i386-dis-evex-w.h: Replace VexScalar by VexScalarR and + XMVexScalar by XMScalar for vmovss and vmovsd. Replace + EXdVexScalarS by EXdS and EXqVexScalarS by EXqS. + +2020-07-14 Jan Beulich + + * i386-dis.c (Vex128, Vex256, vex128_mode, vex256_mode): Delete. + (VEX_W_0F381A_P_2_M_0, VEX_W_0F385A_P_2_M_0, VEX_W_0F3A06_P_2, + VEX_W_0F3A18_P_2, VEX_W_0F3A19_P_2, VEX_W_0F3A38_P_2, + VEX_W_0F3A39_P_2, VEX_W_0F3A46_P_2): Rename to ... + (VEX_W_0F381A_P_2_M_0_L_0, VEX_W_0F385A_P_2_M_0_L_0, + VEX_W_0F3A06_P_2_L_0, VEX_W_0F3A18_P_2_L_0, + VEX_W_0F3A19_P_2_L_0, VEX_W_0F3A38_P_2_L_0, + VEX_W_0F3A39_P_2_L_0, VEX_W_0F3A46_P_2_L_0): ... respectively. + (vex_table): Replace Vex128 by Vex. + (vex_len_table): Likewise. Adjust referenced enum names. + (vex_w_table): Replace Vex128 and Vex256 by Vex. Adjust + referenced enum names. + (OP_VEX): Drop vex128_mode and vex256_mode cases. + * i386-dis-evex-len.h (evex_len_table): Replace Vex128 by Vex. + +2020-07-14 Jan Beulich + + * i386-dis.c (dis386): "LW" description now applies to "DQ". + (putop): Handle "DQ". Don't handle "LW" anymore. + (prefix_table, mod_table): Replace %LW by %DQ. + * i386-dis-evex-len.h, i386-dis-evex-prefix.h: Likewise. + +2020-07-14 Jan Beulich + + * i386-dis.c (OP_E_memory): Move xmm_mw_mode, xmm_mb_mode, + dqd_mode, xmm_md_mode, d_mode, d_swap_mode, and + d_scalar_swap_mode case handling. Move shift adjsutment into + the case its applicable to. + +2020-07-14 Jan Beulich + + * i386-dis.c (EVEX_W_0F3862_P_2, EVEX_W_0F3863_P_2): Delete. + (EXbScalar, EXwScalar): Fold to ... + (EXbwUnit): ... this. + (b_scalar_mode, w_scalar_mode): Fold to ... + (bw_unit_mode): ... this. + (intel_operand_size, OP_E_memory): Replace b_scalar_mode / + w_scalar_mode handling by bw_unit_mode one. + * i386-dis-evex-w.h: Move entries for opcodes 0F3862 and 0F3863 + ... + * i386-dis-evex-prefix.h: ... here. + +2020-07-14 Jan Beulich + + * i386-dis.c (PCMPESTR_Fixup): Delete. + (dis386): Adjust "LQ" description. + (prefix_table): Make %LQ apply to AT&T case only for cvtsi2ss, + cvtsi2sd, ptwrite, vcvtsi2ss, and vcvtsi2sd. Replace use of + PCMPESTR_Fixup by !%LQ and EXx for pcmpestrm, pcmpestri, + vpcmpestrm, and vpcmpestri. + (putop): Honor "cond" when handling LQ. + * i386-dis-evex-prefix.h: Make %LQ apply to AT&T case only for + vcvtsi2ss and vcvtusi2ss. + * i386-dis-evex-w.h: Make %LQ apply to AT&T case only for + vcvtsi2sd and vcvtusi2sd. + +2020-07-14 Jan Beulich + + * i386-dis.c (VCMP_Fixup, VCMP): Delete. + (simd_cmp_op): Add const. + (vex_cmp_op): Move up and drop initial 8 entries. Add const. + (CMP_Fixup): Handle VEX case. + (prefix_table): Replace VCMP by CMP. + * i386-dis-evex-prefix.h, i386-dis-evex-w.h: Likewise. + +2020-07-14 Jan Beulich + + * i386-dis.c (MOVBE_Fixup): Delete. + (Mv): Define. + (prefix_table): Use Mv for movbe entries. + +2020-07-14 Jan Beulich + + * i386-dis.c (CRC32_Fixup): Delete. + (prefix_table): Use Eb/Ev for crc32 entries. + +2020-07-14 Jan Beulich + + * i386-dis.c (OP_E_register, OP_G, OP_REG, CRC32_Fixup): + Conditionalize invocations of "USED_REX (0)". + +2020-07-14 Jan Beulich + + * i386-dis.c (eBX, eCX, eDX, eSP, eBP, eSI, eDI, DL, BL, AH, + CH, DH, BH, AX, DX): Delete. + (OP_IMREG): Drop handling of eBX_reg, eCX_reg, eDX_reg, eSP_reg, + eBP_reg, eSI_reg, eDI_reg, dl_reg, bl_reg, ah_reg, ch_reg, + dh_reg, bh_reg, ax_reg, and dx_reg. Simplify what's left. + +2020-07-10 Lili Cui + + * i386-dis.c (TMM): New. + (EXtmm): Likewise. + (VexTmm): Likewise. + (MVexSIBMEM): Likewise. + (tmm_mode): Likewise. + (vex_sibmem_mode): Likewise. + (REG_VEX_0F3849_X86_64_P_0_W_0_M_1): Likewise. + (MOD_VEX_0F3849_X86_64_P_0_W_0): Likewise. + (MOD_VEX_0F3849_X86_64_P_2_W_0): Likewise. + (MOD_VEX_0F3849_X86_64_P_3_W_0): Likewise. + (MOD_VEX_0F384B_X86_64_P_1_W_0): Likewise. + (MOD_VEX_0F384B_X86_64_P_2_W_0): Likewise. + (MOD_VEX_0F384B_X86_64_P_3_W_0): Likewise. + (MOD_VEX_0F385C_X86_64_P_1_W_0): Likewise. + (MOD_VEX_0F385E_X86_64_P_0_W_0): Likewise. + (MOD_VEX_0F385E_X86_64_P_1_W_0): Likewise. + (MOD_VEX_0F385E_X86_64_P_2_W_0): Likewise. + (MOD_VEX_0F385E_X86_64_P_3_W_0): Likewise. + (RM_VEX_0F3849_X86_64_P_0_W_0_M_1_R_0): Likewise. + (PREFIX_VEX_0F3849_X86_64): Likewise. + (PREFIX_VEX_0F384B_X86_64): Likewise. + (PREFIX_VEX_0F385C_X86_64): Likewise. + (PREFIX_VEX_0F385E_X86_64): Likewise. + (X86_64_VEX_0F3849): Likewise. + (X86_64_VEX_0F384B): Likewise. + (X86_64_VEX_0F385C): Likewise. + (X86_64_VEX_0F385E): Likewise. + (VEX_LEN_0F3849_X86_64_P_0_W_0_M_0): Likewise. + (VEX_LEN_0F3849_X86_64_P_0_W_0_M_1_REG_0_RM_0): Likewise. + (VEX_LEN_0F3849_X86_64_P_2_W_0_M_0): Likewise. + (VEX_LEN_0F3849_X86_64_P_3_W_0_M_0): Likewise. + (VEX_LEN_0F384B_X86_64_P_1_W_0_M_0): Likewise. + (VEX_LEN_0F384B_X86_64_P_2_W_0_M_0): Likewise. + (VEX_LEN_0F384B_X86_64_P_3_W_0_M_0): Likewise. + (VEX_LEN_0F385C_X86_64_P_1_W_0_M_0): Likewise. + (VEX_LEN_0F385E_X86_64_P_0_W_0_M_0): Likewise. + (VEX_LEN_0F385E_X86_64_P_1_W_0_M_0): Likewise. + (VEX_LEN_0F385E_X86_64_P_2_W_0_M_0): Likewise. + (VEX_LEN_0F385E_X86_64_P_3_W_0_M_0): Likewise. + (VEX_W_0F3849_X86_64_P_0): Likewise. + (VEX_W_0F3849_X86_64_P_2): Likewise. + (VEX_W_0F3849_X86_64_P_3): Likewise. + (VEX_W_0F384B_X86_64_P_1): Likewise. + (VEX_W_0F384B_X86_64_P_2): Likewise. + (VEX_W_0F384B_X86_64_P_3): Likewise. + (VEX_W_0F385C_X86_64_P_1): Likewise. + (VEX_W_0F385E_X86_64_P_0): Likewise. + (VEX_W_0F385E_X86_64_P_1): Likewise. + (VEX_W_0F385E_X86_64_P_2): Likewise. + (VEX_W_0F385E_X86_64_P_3): Likewise. + (names_tmm): Likewise. + (att_names_tmm): Likewise. + (intel_operand_size): Handle void_mode. + (OP_XMM): Handle tmm_mode. + (OP_EX): Likewise. + (OP_VEX): Likewise. + * i386-gen.c (cpu_flag_init): Add entries for CpuAMX_INT8, + CpuAMX_BF16 and CpuAMX_TILE. + (operand_type_shorthands): Add RegTMM. + (operand_type_init): Likewise. + (operand_types): Add Tmmword. + (cpu_flag_init): Add CPU_AMX_INT8, CpuAMX_BF16 and CpuAMX_TILE. + (cpu_flags): Add CpuAMX_INT8, CpuAMX_BF16 and CpuAMX_TILE. + * i386-opc.h (CpuAMX_INT8): New. + (CpuAMX_BF16): Likewise. + (CpuAMX_TILE): Likewise. + (SIBMEM): Likewise. + (Tmmword): Likewise. + (i386_cpu_flags): Add cpuamx_int8, cpuamx_bf16 and cpuamx_tile. + (i386_opcode_modifier): Extend width of fields vexvvvv and sib. + (i386_operand_type): Add tmmword. + * i386-opc.tbl: Add AMX instructions. + * i386-reg.tbl: Add AMX registers. + * i386-init.h: Regenerated. + * i386-tbl.h: Likewise. + +2020-07-08 Jan Beulich + + * i386-dis.c (OP_LWPCB_E, OP_LWP_E): Delete. + (REG_XOP_LWPCB, REG_XOP_LWP, REG_XOP_TBM_01, REG_XOP_TBM_02): + Rename to ... + (REG_0FXOP_09_12_M_1_L_0, REG_0FXOP_0A_12_L_0, + REG_0FXOP_09_01_L_0, REG_0FXOP_09_02_L_0): ... these + respectively. + (MOD_VEX_0FXOP_09_12, VEX_LEN_0FXOP_08_85, VEX_LEN_0FXOP_08_86, + VEX_LEN_0FXOP_08_87, VEX_LEN_0FXOP_08_8E, VEX_LEN_0FXOP_08_8F, + VEX_LEN_0FXOP_08_95, VEX_LEN_0FXOP_08_96, VEX_LEN_0FXOP_08_97, + VEX_LEN_0FXOP_08_9E, VEX_LEN_0FXOP_08_9F, VEX_LEN_0FXOP_08_A3, + VEX_LEN_0FXOP_08_A6, VEX_LEN_0FXOP_08_B6, VEX_LEN_0FXOP_08_C0, + VEX_LEN_0FXOP_08_C1, VEX_LEN_0FXOP_08_C2, VEX_LEN_0FXOP_08_C3, + VEX_LEN_0FXOP_09_01, VEX_LEN_0FXOP_09_02, VEX_LEN_0FXOP_09_12_M_1, + VEX_LEN_0FXOP_09_90, VEX_LEN_0FXOP_09_91, VEX_LEN_0FXOP_09_92, + VEX_LEN_0FXOP_09_93, VEX_LEN_0FXOP_09_94, VEX_LEN_0FXOP_09_95, + VEX_LEN_0FXOP_09_96, VEX_LEN_0FXOP_09_97, VEX_LEN_0FXOP_09_98, + VEX_LEN_0FXOP_09_99, VEX_LEN_0FXOP_09_9A, VEX_LEN_0FXOP_09_9B, + VEX_LEN_0FXOP_09_C1, VEX_LEN_0FXOP_09_C2, VEX_LEN_0FXOP_09_C3, + VEX_LEN_0FXOP_09_C6, VEX_LEN_0FXOP_09_C7, VEX_LEN_0FXOP_09_CB, + VEX_LEN_0FXOP_09_D1, VEX_LEN_0FXOP_09_D2, VEX_LEN_0FXOP_09_D3, + VEX_LEN_0FXOP_09_D6, VEX_LEN_0FXOP_09_D7, VEX_LEN_0FXOP_09_DB, + VEX_LEN_0FXOP_09_E1, VEX_LEN_0FXOP_09_E2, VEX_LEN_0FXOP_09_E3, + VEX_LEN_0FXOP_0A_12, VEX_W_0FXOP_08_85_L_0, + VEX_W_0FXOP_08_86_L_0, VEX_W_0FXOP_08_87_L_0, + VEX_W_0FXOP_08_8E_L_0, VEX_W_0FXOP_08_8F_L_0, + VEX_W_0FXOP_08_95_L_0, VEX_W_0FXOP_08_96_L_0, + VEX_W_0FXOP_08_97_L_0, VEX_W_0FXOP_08_9E_L_0, + VEX_W_0FXOP_08_9F_L_0, VEX_W_0FXOP_08_A6_L_0, + VEX_W_0FXOP_08_B6_L_0, VEX_W_0FXOP_08_C0_L_0, + VEX_W_0FXOP_08_C1_L_0, VEX_W_0FXOP_08_C2_L_0, + VEX_W_0FXOP_08_C3_L_0, VEX_W_0FXOP_08_CC_L_0, + VEX_W_0FXOP_08_CD_L_0, VEX_W_0FXOP_08_CE_L_0, + VEX_W_0FXOP_08_CF_L_0, VEX_W_0FXOP_08_EC_L_0, + VEX_W_0FXOP_08_ED_L_0, VEX_W_0FXOP_08_EE_L_0, + VEX_W_0FXOP_08_EF_L_0, VEX_W_0FXOP_09_C1_L_0, + VEX_W_0FXOP_09_C2_L_0, VEX_W_0FXOP_09_C3_L_0, + VEX_W_0FXOP_09_C6_L_0, VEX_W_0FXOP_09_C7_L_0, + VEX_W_0FXOP_09_CB_L_0, VEX_W_0FXOP_09_D1_L_0, + VEX_W_0FXOP_09_D2_L_0, VEX_W_0FXOP_09_D3_L_0, + VEX_W_0FXOP_09_D6_L_0, VEX_W_0FXOP_09_D7_L_0, + VEX_W_0FXOP_09_DB_L_0, VEX_W_0FXOP_09_E1_L_0, + VEX_W_0FXOP_09_E2_L_0, VEX_W_0FXOP_09_E3_L_0): New enumerators. + (reg_table): Re-order XOP entries. Adjust their operands. + (xop_table): Replace 08_85, 08_86, 08_87, 08_8E, 08_8F, 08_95, + 08_96, 08_97, 08_9E, 08_9F, 08_A3, 08_A6, 08_B6, 08_C0, 08_C1, + 08_C2, 08_C3, 09_01, 09_02, 09_12, 09_90, 09_91, 09_92, 09_93, + 09_94, 09_95, 09_96, 09_97, 09_98, 09_99, 09_9A, 09_9B, 09_C1, + 09_C2, 09_C3, 09_C6, 09_C7, 09_CB, 09_D1, 09_D2, 09_D3, 09_D6, + 09_D7, 09_DB, 09_E1, 09_E2, 09_E3, and VEX_LEN_0FXOP_0A_12 + entries by references ... + (vex_len_table): ... to resepctive new entries here. For several + new and existing entries reference ... + (vex_w_table): ... new entries here. + (mod_table): New MOD_VEX_0FXOP_09_12 entry. + +2020-07-08 Jan Beulich + + * i386-dis.c (XMVexScalarI4): Define. + (VEX_LEN_0F3A6A_P_2, VEX_LEN_0F3A6B_P_2, VEX_LEN_0F3A6E_P_2, + VEX_LEN_0F3A6F_P_2, VEX_LEN_0F3A7A_P_2, VEX_LEN_0F3A7B_P_2, + VEX_LEN_0F3A7E_P_2, VEX_LEN_0F3A7F_P_2): Delete. + (vex_len_table): Move scalar FMA4 entries ... + (prefix_table): ... here. + (OP_REG_VexI4): Handle scalar_mode. + * i386-opc.tbl: Use VexLIG for scalar FMA4 insns. + * i386-tbl.h: Re-generate. + +2020-07-08 Jan Beulich + + * i386-dis.c (OP_Vex_2src_1, OP_Vex_2src_2, Vex_2src_1, + Vex_2src_2): Delete. + (OP_VexW, VexW): New. + (xop_table): Use EXx for rotates by immediate. Use EXx and VexW + for shifts and rotates by register. + +2020-07-08 Jan Beulich + + * i386-dis.c (OP_EX_VexImmW, OP_XMM_VexW, EXVexImmW, XMVexW, + VEX_W_0F3A48_P_2, VEX_W_0F3A49_P_2, vex_w_done, get_vex_imm8, + OP_EX_VexReg): Delete. + (OP_VexI4, VexI4): New. + (vex_w_table): Move vpermil2ps and vpermil2pd entries ... + (prefix_table): ... here. + (print_insn): Drop setting of vex_w_done. + +2020-07-08 Jan Beulich + + * i386-dis.c (OP_EX_VexW, EXVexW, EXdVexW, EXqVexW): Delete. + (prefix_table, vex_len_table): Replace operands for FMA4 insns. + (xop_table): Replace operands of 4-operand insns. + (OP_REG_VexI4): Move VEX.W based operand swaping here. + +2020-07-07 Claudiu Zissulescu + + * arc-opc.c (insert_rbd): New function. + (RBD): Define. + (RBDdup): Likewise. + * arc-tbl.h (vadd2, vadd4h, vmac2h, vmpy2h, vsub4h): Update + instructions. + +2020-07-07 Jan Beulich + + * i386-dis.c (EVEX_W_0F3826_P_1, EVEX_W_0F3826_P_2, + EVEX_W_0F3828_P_1, EVEX_W_0F3829_P_1, EVEX_W_0F3854_P_2, + EVEX_W_0F3866_P_2, EVEX_W_0F3875_P_2, EVEX_W_0F387D_P_2, + EVEX_W_0F388D_P_2, EVEX_W_0F3A3E_P_2, EVEX_W_0F3A3F_P_2): + Delete. + (putop): Handle "BW". + * i386-dis-evex-w.h: Move entries for opcodes 0F3826, 0F3826, + 0F3828, 0F3829, 0F3854, 0F3866, 0F3875, 0F387D, 0F388D, 0F3A3E, + and 0F3A3F ... + * i386-dis-evex-prefix.h: ... here. + +2020-07-06 Jan Beulich + + * i386-dis.c (VEX_LEN_0FXOP_09_80, VEX_LEN_0FXOP_09_81): Delete. + (VEX_LEN_0FXOP_09_82_W_0, VEX_LEN_0FXOP_09_83_W_0, + VEX_W_0FXOP_09_80, VEX_W_0FXOP_09_81, VEX_W_0FXOP_09_82, + VEX_W_0FXOP_09_83): New enumerators. + (xop_table): Reference the above. + (vex_len_table): Replace vfrczp* entries by vfrczs* ones. + (vex_w_table): New VEX_W_0FXOP_09_80, VEX_W_0FXOP_09_81, + VEX_W_0FXOP_09_82, and VEX_W_0FXOP_09_83 entries. + (get_valid_dis386): Return bad_opcode for XOP.PP != 0. + +2020-07-06 Jan Beulich + + * i386-dis.c (EVEX_W_0F3838_P_1, + EVEX_W_0F3839_P_1, EVEX_W_0F3840_P_2, EVEX_W_0F3855_P_2, + EVEX_W_0F3868_P_3, EVEX_W_0F3871_P_2, EVEX_W_0F3873_P_2, + EVEX_W_0F3A50_P_2, EVEX_W_0F3A51_P_2, EVEX_W_0F3A56_P_2, + EVEX_W_0F3A57_P_2, EVEX_W_0F3A66_P_2, EVEX_W_0F3A67_P_2, + EVEX_W_0F3A71_P_2, EVEX_W_0F3A73_P_2): Delete. + (putop): Centralize management of last[]. Delete SAVE_LAST. + * i386-dis-evex-w.h: Move entries for opcodes 0F3838, 0F3839, + 0F3840, 0F3855, 0F3868, 0F3871, 0F3873, 0F3A50, 0F3A51, 0F3A56, + 0F3A57, 0F3A66, 0F3A67, 0F3A71, and 0F3A73 ... + * i386-dis-evex-prefix.h: here. + +2020-07-06 Jan Beulich + + * i386-dis.c (MOD_EVEX_0F381A_P_2_W_0, MOD_EVEX_0F381A_P_2_W_1, + MOD_EVEX_0F381B_P_2_W_0, MOD_EVEX_0F381B_P_2_W_1, + MOD_EVEX_0F385A_P_2_W_0, MOD_EVEX_0F385A_P_2_W_1, + MOD_EVEX_0F385B_P_2_W_0, MOD_EVEX_0F385B_P_2_W_1): New + enumerators. + (EVEX_LEN_0F381A_P_2_W_0, EVEX_LEN_0F381A_P_2_W_1, + EVEX_LEN_0F381B_P_2_W_0, EVEX_LEN_0F381B_P_2_W_1, + EVEX_LEN_0F385A_P_2_W_0, EVEX_LEN_0F385A_P_2_W_1, + EVEX_LEN_0F385B_P_2_W_0, EVEX_LEN_0F385B_P_2_W_1): Rename to ... + (EVEX_LEN_0F381A_P_2_W_0_M_0, EVEX_LEN_0F381A_P_2_W_1_M_0, + EVEX_LEN_0F381B_P_2_W_0_M_0, EVEX_LEN_0F381B_P_2_W_1_M_0, + EVEX_LEN_0F385A_P_2_W_0_M_0, EVEX_LEN_0F385A_P_2_W_1_M_0, + EVEX_LEN_0F385B_P_2_W_0_M_0, EVEX_LEN_0F385B_P_2_W_1_M_0): ... + these, respectively. + * i386-dis-evex-len.h: Adjust comments. + * i386-dis-evex-mod.h: New MOD_EVEX_0F381A_P_2_W_0, + MOD_EVEX_0F381A_P_2_W_1, MOD_EVEX_0F381B_P_2_W_0, + MOD_EVEX_0F381B_P_2_W_1, MOD_EVEX_0F385A_P_2_W_0, + MOD_EVEX_0F385A_P_2_W_1, MOD_EVEX_0F385B_P_2_W_0, and + MOD_EVEX_0F385B_P_2_W_1 table entries. + * i386-dis-evex-w.h: Reference mod_table[] for + EVEX_W_0F381A_P_2, EVEX_W_0F381B_P_2, EVEX_W_0F385A_P_2, and + EVEX_W_0F385B_P_2. + +2020-07-06 Jan Beulich + + * i386-dis-evex-len.h (vbroadcastf32x8, vbroadcasti32x8, + vinsertf32x8, vinsertf64x4, vextractf32x8, vextractf64x4): Use + EXymm. + (vinserti32x8, vinserti64x4, vextracti32x8, vextracti64x4): + Likewise. Mark 256-bit entries invalid. + +2020-07-06 Jan Beulich + + * i386-dis.c (PREFIX_EVEX_0F62, PREFIX_EVEX_0F6A, + PREFIX_EVEX_0F6B, PREFIX_EVEX_0F6C, PREFIX_EVEX_0F6D, + PREFIX_EVEX_0FD2, PREFIX_EVEX_0FD3, PREFIX_EVEX_0FD4, + PREFIX_EVEX_0FF2, PREFIX_EVEX_0FF3, PREFIX_EVEX_0FF4, + PREFIX_EVEX_0FFA, PREFIX_EVEX_0FFB, PREFIX_EVEX_0FFE, + PREFIX_EVEX_0F382B): Delete. + (EVEX_W_0F62_P_2, EVEX_W_0F6A_P_2, EVEX_W_0F6B_P_2, + EVEX_W_0F6C_P_2, EVEX_W_0F6D_P_2, EVEX_W_0FD2_P_2, + EVEX_W_0FD3_P_2, EVEX_W_0FD4_P_2, EVEX_W_0FF2_P_2, + EVEX_W_0FF3_P_2, EVEX_W_0FF4_P_2, EVEX_W_0FFA_P_2, + EVEX_W_0FFB_P_2, EVEX_W_0FFE_P_2, EVEX_W_0F382B_P_2): Rename + to ... + (EVEX_W_0F62, EVEX_W_0F6A, EVEX_W_0F6B, EVEX_W_0F6C, + EVEX_W_0F6D, EVEX_W_0FD2, EVEX_W_0FD3, EVEX_W_0FD4, + EVEX_W_0FF2, EVEX_W_0FF3, EVEX_W_0FF4, EVEX_W_0FFA, + EVEX_W_0FFB, EVEX_W_0FFE, EVEX_W_0F382B): ... these + respectively. + * i386-dis-evex.h (evex_table): Reference VEX_W table entries + for opcodes 0F62, 0F6A, 0F6B, 0F6C, 0F6D, 0FD2, 0FD3, 0FD4, + 0FF2, 0FF3, 0FF4, 0FFA, 0FFB, 0FFE, 0F382B. + * i386-dis-evex-prefix.h (PREFIX_EVEX_0F62, PREFIX_EVEX_0F6A, + PREFIX_EVEX_0F6B, PREFIX_EVEX_0F6C, PREFIX_EVEX_0F6D, + PREFIX_EVEX_0FD2, PREFIX_EVEX_0FD3, PREFIX_EVEX_0FD4, + PREFIX_EVEX_0FF2, PREFIX_EVEX_0FF3, PREFIX_EVEX_0FF4, + PREFIX_EVEX_0FFA, PREFIX_EVEX_0FFB, PREFIX_EVEX_0FFE, + PREFIX_EVEX_0F382B): Remove table entries. + * i386-dis-evex-w.h: Reference VEX table entries for opcodes + 0F62, 0F6A, 0F6B, 0F6C, 0F6D, 0FD2, 0FD3, 0FD4, 0FF2, 0FF3, + 0FF4, 0FFA, 0FFB, 0FFE, 0F382B. + +2020-07-06 Jan Beulich + + * i386-dis.c (EVEX_LEN_0F3816_P_2, EVEX_LEN_0F3836_P_2, + EVEX_LEN_0F3A00_P_2_W_1, EVEX_LEN_0F3A01_P_2_W_1): New + enumerators. + * i386-dis-evex-len.h (evex_len_table): New EVEX_LEN_0F3816_P_2, + EVEX_LEN_0F3836_P_2, EVEX_LEN_0F3A00_P_2_W_1, and + EVEX_LEN_0F3A01_P_2_W_1 table entries. + * i386-dis-evex-prefix.h, i386-dis-evex-w.h: Reference the above + entries. + +2020-07-06 Jan Beulich + + * i386-dis.c (EVEX_LEN_0FC4_P_2, EVEX_LEN_0FC5_P_2, + EVEX_LEN_0F3A14_P_2, EVEX_LEN_0F3A15_P_2, EVEX_LEN_0F3A16_P_2, + EVEX_LEN_0F3A17_P_2, EVEX_LEN_0F3A20_P_2, + EVEX_LEN_0F3A21_P_2_W_0, EVEX_LEN_0F3A22_P_2): New enumerators. + * i386-dis-evex-len.h (evex_len_table): New EVEX_LEN_0FC4_P_2, + EVEX_LEN_0FC5_P_2, EVEX_LEN_0F3A14_P_2, EVEX_LEN_0F3A15_P_2, + EVEX_LEN_0F3A16_P_2, EVEX_LEN_0F3A17_P_2, EVEX_LEN_0F3A20_P_2, + EVEX_LEN_0F3A21_P_2_W_0, and EVEX_LEN_0F3A22_P_2 table entries. + * i386-dis-evex-prefix.h, i386-dis-evex-w.h: Reference the above + entries. + +2020-07-06 Jan Beulich + + * i386-dis.c (PREFIX_EVEX_0F3A1D, EVEX_W_0F3A1D_P_2): Delete. + (VEX_W_0F3813_P_2, VEX_W_0F3A1D_P_2): New enumerators. + (prefix_table): Reference VEX_W_0F3813_P_2 and VEX_W_0F3A1D_P_2 + respectively. + (vex_w_table): New VEX_W_0F3813_P_2 and VEX_W_0F3A1D_P_2 table + entries. + * i386-dis-evex.h (evex_table): Reference VEX table entry for + opcode 0F3A1D. + * i386-dis-evex-prefix.h (PREFIX_EVEX_0F3A1D): Delete table + entry. + * i386-dis-evex-w.h (EVEX_W_0F3A1D_P_2): Likewise. + +2020-07-06 Jan Beulich + + * i386-dis.c (PREFIX_EVEX_0F60, PREFIX_EVEX_0F61, + PREFIX_EVEX_0F63, PREFIX_EVEX_0F67, PREFIX_EVEX_0F68, + PREFIX_EVEX_0F69, PREFIX_EVEX_0FD1, PREFIX_EVEX_0FD5, + PREFIX_EVEX_0FD8, PREFIX_EVEX_0FD9, PREFIX_EVEX_0FDA, + PREFIX_EVEX_0FDC, PREFIX_EVEX_0FDD, PREFIX_EVEX_0FDE, + PREFIX_EVEX_0FE0, PREFIX_EVEX_0FE1, PREFIX_EVEX_0FE3, + PREFIX_EVEX_0FE4, PREFIX_EVEX_0FE5, PREFIX_EVEX_0FE8, + PREFIX_EVEX_0FE9, PREFIX_EVEX_0FEA, PREFIX_EVEX_0FEC, + PREFIX_EVEX_0FED, PREFIX_EVEX_0FEE, PREFIX_EVEX_0FF1, + PREFIX_EVEX_0FF5, PREFIX_EVEX_0FF6, PREFIX_EVEX_0FF8, + PREFIX_EVEX_0FF9, PREFIX_EVEX_0FFC, PREFIX_EVEX_0FFD, + PREFIX_EVEX_0F3800, PREFIX_EVEX_0F3804, PREFIX_EVEX_0F380B, + PREFIX_EVEX_0F380C, PREFIX_EVEX_0F3818, PREFIX_EVEX_0F381C, + PREFIX_EVEX_0F381D, PREFIX_EVEX_0F383C, PREFIX_EVEX_0F383E, + PREFIX_EVEX_0F3858, PREFIX_EVEX_0F3878, PREFIX_EVEX_0F3879, + PREFIX_EVEX_0F3896, PREFIX_EVEX_0F3897, PREFIX_EVEX_0F3898, + PREFIX_EVEX_0F3899, PREFIX_EVEX_0F389C, PREFIX_EVEX_0F389D, + PREFIX_EVEX_0F389E, PREFIX_EVEX_0F389F, PREFIX_EVEX_0F38A6, + PREFIX_EVEX_0F38A7, PREFIX_EVEX_0F38A8, PREFIX_EVEX_0F38A9, + PREFIX_EVEX_0F38AC, PREFIX_EVEX_0F38AD, PREFIX_EVEX_0F38AE, + PREFIX_EVEX_0F38AF, PREFIX_EVEX_0F38B6, PREFIX_EVEX_0F38B7, + PREFIX_EVEX_0F38B8, PREFIX_EVEX_0F38B9, PREFIX_EVEX_0F38BA, + PREFIX_EVEX_0F38BB, PREFIX_EVEX_0F38BC, PREFIX_EVEX_0F38BD, + PREFIX_EVEX_0F38BE, PREFIX_EVEX_0F38BF, PREFIX_EVEX_0F38CF, + PREFIX_EVEX_0F38DC, PREFIX_EVEX_0F38DD, PREFIX_EVEX_0F38DE, + PREFIX_EVEX_0F38DF, PREFIX_EVEX_0F3A04, PREFIX_EVEX_0F3A0F, + PREFIX_EVEX_0F3A44, PREFIX_EVEX_0F3ACE, PREFIX_EVEX_0F3ACF, + EVEX_W_0F380C_P_2, EVEX_W_0F3818_P_2, EVEX_W_0F3858_P_2, + EVEX_W_0F3878_P_2, EVEX_W_0F3879_P_2, EVEX_W_0F3A04_P_2, + EVEX_W_0F3ACE_P_2, EVEX_W_0F3ACF_P_2): Delete. + (prefix_table): Add EXxEVexR to FMA table entries. + (OP_Rounding): Move abort() invocation. + * i386-dis-evex.h (evex_table): Reference VEX table for opcodes + 0F60, 0F61, 0F63, 0F67, 0F68, 0F69, 0FD1, 0FD5, 0FD8, 0FD9, + 0FDA, 0FDC, 0FDD, 0FDE, 0FE0, 0FE1, 0FE3, 0FE4, 0FE5, 0FE8, + 0FE9, 0FEA, 0FEC, 0FED, 0FEE, 0FF1, 0FF5, 0FF6, 0FF8, 0FF9, + 0FFC, 0FFD, 0F3800, 0F3804, 0F380B, 0F380C, 0F3818, 0F381C, + 0F381D, 0F383C, 0F383E, 0F3858, 0F3878, 0F3879, 0F3896, 0F3897, + 0F3898, 0F3899, 0F389C, 0F389D, 0F389E, 0F389F, 0F38A6, 0F38A7, + 0F38A8, 0F38A9, 0F38AC, 0F38AD, 0F38AE, 0F38AF, 0F38B6, 0F38B7, + 0F38B8, 0F38B9, 0F38BA, 0F38BB, 0F38BC, 0F38BD, 0F38BE, 0F38BF, + 0F38CF, 0F38DC, 0F38DD, 0F38DE, 0F38DF, 0F3A04, 0F3A0F, 0F3A44, + 0F3ACE, 0F3ACF. + * i386-dis-evex-prefix.h (PREFIX_EVEX_0F60, PREFIX_EVEX_0F61, + PREFIX_EVEX_0F63, PREFIX_EVEX_0F67, PREFIX_EVEX_0F68, + PREFIX_EVEX_0F69, PREFIX_EVEX_0FD1, PREFIX_EVEX_0FD5, + PREFIX_EVEX_0FD8, PREFIX_EVEX_0FD9, PREFIX_EVEX_0FDA, + PREFIX_EVEX_0FDC, PREFIX_EVEX_0FDD, PREFIX_EVEX_0FDE, + PREFIX_EVEX_0FE0, PREFIX_EVEX_0FE1, PREFIX_EVEX_0FE3, + PREFIX_EVEX_0FE4, PREFIX_EVEX_0FE5, PREFIX_EVEX_0FE8, + PREFIX_EVEX_0FE9, PREFIX_EVEX_0FEA, PREFIX_EVEX_0FEC, + PREFIX_EVEX_0FED, PREFIX_EVEX_0FEE, PREFIX_EVEX_0FF1, + PREFIX_EVEX_0FF5, PREFIX_EVEX_0FF6, PREFIX_EVEX_0FF8, + PREFIX_EVEX_0FF9, PREFIX_EVEX_0FFC, PREFIX_EVEX_0FFD, + PREFIX_EVEX_0F3800, PREFIX_EVEX_0F3804, PREFIX_EVEX_0F380B, + PREFIX_EVEX_0F380C, PREFIX_EVEX_0F3818, PREFIX_EVEX_0F381C, + PREFIX_EVEX_0F381D, PREFIX_EVEX_0F383C, PREFIX_EVEX_0F383E, + PREFIX_EVEX_0F3858, PREFIX_EVEX_0F3878, PREFIX_EVEX_0F3879, + PREFIX_EVEX_0F3896, PREFIX_EVEX_0F3897, PREFIX_EVEX_0F3898, + PREFIX_EVEX_0F3899, PREFIX_EVEX_0F389C, PREFIX_EVEX_0F389D, + PREFIX_EVEX_0F389E, PREFIX_EVEX_0F389F, PREFIX_EVEX_0F38A6, + PREFIX_EVEX_0F38A7, PREFIX_EVEX_0F38A8, PREFIX_EVEX_0F38A9, + PREFIX_EVEX_0F38AC, PREFIX_EVEX_0F38AD, PREFIX_EVEX_0F38AE, + PREFIX_EVEX_0F38AF, PREFIX_EVEX_0F38B6, PREFIX_EVEX_0F38B7, + PREFIX_EVEX_0F38B8, PREFIX_EVEX_0F38B9, PREFIX_EVEX_0F38BA, + PREFIX_EVEX_0F38BB, PREFIX_EVEX_0F38BC, PREFIX_EVEX_0F38BD, + PREFIX_EVEX_0F38BE, PREFIX_EVEX_0F38BF, PREFIX_EVEX_0F38CF, + PREFIX_EVEX_0F38DC, PREFIX_EVEX_0F38DD, PREFIX_EVEX_0F38DE, + PREFIX_EVEX_0F38DF, PREFIX_EVEX_0F3A04, PREFIX_EVEX_0F3A0F, + PREFIX_EVEX_0F3A44, PREFIX_EVEX_0F3ACE, PREFIX_EVEX_0F3ACF): + Delete table entries. + * i386-dis-evex-w.h (EVEX_W_0F380C_P_2, EVEX_W_0F3818_P_2, + EVEX_W_0F3858_P_2, EVEX_W_0F3878_P_2, EVEX_W_0F3879_P_2, + EVEX_W_0F3A04_P_2, EVEX_W_0F3ACE_P_2, EVEX_W_0F3ACF_P_2): + Likewise. + +2020-07-06 Jan Beulich + + * i386-dis.c (EXqScalarS): Delete. + (vex_len_table): Replace EXqScalarS by EXqVexScalarS. + * i386-dis-evex-w.h (vmovq): Use EXqVexScalarS. + +2020-07-06 Jan Beulich + + * i386-dis.c (safe-ctype.h): Include. + (EXdScalar, EXqScalar): Delete. + (d_scalar_mode, q_scalar_mode): Delete. + (prefix_table, vex_len_table): Use EXxmm_md in place of + EXdScalar and EXxmm_mq in place of EXqScalar. + (intel_operand_size, OP_E_memory, OP_EX): Remove uses of + d_scalar_mode and q_scalar_mode. + * i386-dis-evex-w.h (vmovss): Use EXxmm_md. + (vmovsd): Use EXxmm_mq. + +2020-07-06 Yuri Chornoivan + + PR 26204 + * arc-dis.c: Fix spelling mistake. + * po/opcodes.pot: Regenerate. + +2020-07-06 Nick Clifton + + * po/pt_BR.po: Updated Brazilian Portugugese translation. + * po/uk.po: Updated Ukranian translation. + +2020-07-04 Nick Clifton + + * configure: Regenerate. + * po/opcodes.pot: Regenerate. + +2020-07-04 Nick Clifton + + Binutils 2.35 branch created. + +2020-07-02 H.J. Lu + + * i386-gen.c (opcode_modifiers): Add VexSwapSources. + * i386-opc.h (VexSwapSources): New. + (i386_opcode_modifier): Add vexswapsources. + * i386-opc.tbl: Add VexSwapSources to BMI2 and BMI instructions + with two source operands swapped. + * i386-tbl.h: Regenerated. + +2020-06-30 Nelson Chu + + * riscv-dis.c (print_insn_args, case 'E'): Updated. Let the + unprivileged CSR can also be initialized. + +2020-06-29 Alan Modra + + * arm-dis.c: Use C style comments. + * cr16-opc.c: Likewise. + * ft32-dis.c: Likewise. + * moxie-opc.c: Likewise. + * tic54x-dis.c: Likewise. + * s12z-opc.c: Remove useless comment. + * xgate-dis.c: Likewise. + +2020-06-26 H.J. Lu + + * i386-opc.tbl: Add a blank line. + +2020-06-26 H.J. Lu + + * i386-gen.c (opcode_modifiers): Replace VecSIB with SIB. + (VecSIB128): Renamed to ... + (VECSIB128): This. + (VecSIB256): Renamed to ... + (VECSIB256): This. + (VecSIB512): Renamed to ... + (VECSIB512): This. + (VecSIB): Renamed to ... + (SIB): This. + (i386_opcode_modifier): Replace vecsib with sib. + * i386-opc.tbl (VecSIB128): New. + (VecSIB256): Likewise. + (VecSIB512): Likewise. + Replace VecSIB=1, VecSIB=2 and VecSIB=3 with VecSIB128, VecSIB256 + and VecSIB512, respectively. + +2020-06-26 Jan Beulich + + * i386-dis.c: Adjust description of I macro. + (x86_64_table): Drop use of I. + (float_mem): Replace use of I. + (putop): Remove handling of I. Adjust setting/clearing of "alt". + +2020-06-26 Jan Beulich + + * i386-dis.c: (print_insn): Avoid straight assignment to + priv.orig_sizeflag when processing -M sub-options. + +2020-06-25 Jan Beulich + + * i386-dis.c: Adjust description of J macro. + (dis386, x86_64_table, mod_table): Replace J. + (putop): Remove handling of J. + +2020-06-25 Jan Beulich + + * i386-dis.c: (float_mem): Reduce alternatives for fstpt and fldpt. + +2020-06-25 Jan Beulich + + * i386-dis.c: Adjust description of "LQ" macro. + (dis386_twobyte): Use LQ for sysret. + (putop): Adjust handling of LQ. + +2020-06-22 Nelson Chu + + * riscv-opc.c: Move the structures and functions to bfd/elfxx-riscv.c. + * riscv-dis.c: Include elfxx-riscv.h. + +2020-06-18 H.J. Lu + + * i386-dis.c (prefix_table): Revert the last vmgexit change. + +2020-06-17 Lili Cui + + * i386-dis.c (prefix_table): Delete the incorrect vmgexit. + +2020-06-14 H.J. Lu + + PR gas/26115 + * i386-dis.c (prefix_table): Replace xsuspldtrk with xsusldtrk. + * i386-opc.tbl: Likewise. + * i386-tbl.h: Regenerated. + +2020-06-12 Nelson Chu + + * riscv-opc.c (priv_specs): Remove v1.9 and PRIV_SPEC_CLASS_1P9. + +2020-06-11 Alex Coplan + + * aarch64-opc.c (SYSREG): New macro for describing system registers. + (SR_CORE): Likewise. + (SR_FEAT): Likewise. + (SR_RNG): Likewise. + (SR_V8_1): Likewise. + (SR_V8_2): Likewise. + (SR_V8_3): Likewise. + (SR_V8_4): Likewise. + (SR_PAN): Likewise. + (SR_RAS): Likewise. + (SR_SSBS): Likewise. + (SR_SVE): Likewise. + (SR_ID_PFR2): Likewise. + (SR_PROFILE): Likewise. + (SR_MEMTAG): Likewise. + (SR_SCXTNUM): Likewise. + (aarch64_sys_regs): Refactor to store feature information in the table. + (aarch64_sys_reg_supported_p): Collapse logic for system registers + that now describe their own features. + (aarch64_pstatefield_supported_p): Likewise. + +2020-06-09 H.J. Lu + + * i386-dis.c (prefix_table): Fix a typo in comments. + +2020-06-09 Jan Beulich + + * i386-dis.c (rex_ignored): Delete. + (ckprefix): Drop rex_ignored initialization. + (get_valid_dis386): Drop setting of rex_ignored. + (print_insn): Drop checking of rex_ignored. Don't record data + size prefix as used with VEX-and-alike encodings. + +2020-06-09 Jan Beulich + + * i386-dis.c (MOD_0F12_PREFIX_2, MOD_0F16_PREFIX_2, + MOD_VEX_0F12_PREFIX_2, MOD_VEX_0F16_PREFIX_2): New enumerators. + (VEX_LEN_0F12_P_2, VEX_LEN_0F16_P_2): Delete. + (VEX_LEN_0F12_P_2_M_0, VEX_LEN_0F16_P_2_M_0): Define. + (prefix_table): Decode MOD for cases 2 of opcodes 0F12, 0F16, + VEX_0F12, and VEX_0F16. + (vex_len_table): Use X for vmovlp* and vmovh*s. Drop + VEX_LEN_0F12_P_2 and VEX_LEN_0F16_P_2 entries. + (mod_table): Use X for movlpX and movhpX. Drop PREFIX_OPCODE + from movlps and movhlps. New MOD_0F12_PREFIX_2, + MOD_0F16_PREFIX_2, MOD_VEX_0F12_PREFIX_2, and + MOD_VEX_0F16_PREFIX_2 entries. + +2020-06-09 Jan Beulich + + * i386-dis.c (MOD_EVEX_0F12_PREFIX_2, MOD_EVEX_0F13, + MOD_EVEX_0F16_PREFIX_2, MOD_EVEX_0F17, MOD_EVEX_0F2B): New enumerators. + (PREFIX_EVEX_0F13, PREFIX_EVEX_0F14, PREFIX_EVEX_0F15, + PREFIX_EVEX_0F17, PREFIX_EVEX_0F28, PREFIX_EVEX_0F29, + PREFIX_EVEX_0F2B, PREFIX_EVEX_0F54, PREFIX_EVEX_0F55, + PREFIX_EVEX_0F56, PREFIX_EVEX_0F57, PREFIX_EVEX_0FC6, + EVEX_W_0F10_P_0, EVEX_W_0F10_P_2, EVEX_W_0F11_P_0, + EVEX_W_0F11_P_2, EVEX_W_0F12_P_0_M_0, EVEX_W_0F12_P_2, + EVEX_W_0F13_P_0, EVEX_W_0F13_P_2, EVEX_W_0F14_P_0, + EVEX_W_0F14_P_2, EVEX_W_0F15_P_0, EVEX_W_0F15_P_2, + EVEX_W_0F16_P_0_M_0, EVEX_W_0F16_P_2, EVEX_W_0F17_P_0, + EVEX_W_0F17_P_2, EVEX_W_0F28_P_0, EVEX_W_0F28_P_2, + EVEX_W_0F29_P_0, EVEX_W_0F29_P_2, EVEX_W_0F2B_P_0, + EVEX_W_0F2B_P_2, EVEX_W_0F2E_P_0, EVEX_W_0F2E_P_2, + EVEX_W_0F2F_P_0, EVEX_W_0F2F_P_2, EVEX_W_0F51_P_0, + EVEX_W_0F51_P_2, EVEX_W_0F54_P_0, EVEX_W_0F54_P_2, + EVEX_W_0F55_P_0, EVEX_W_0F55_P_2, EVEX_W_0F56_P_0, + EVEX_W_0F56_P_2, EVEX_W_0F57_P_0, EVEX_W_0F57_P_2, + EVEX_W_0F58_P_0, EVEX_W_0F58_P_2, EVEX_W_0F59_P_0, + EVEX_W_0F59_P_2, EVEX_W_0F5C_P_0, EVEX_W_0F5C_P_2, + EVEX_W_0F5D_P_0, EVEX_W_0F5D_P_2, EVEX_W_0F5E_P_0, + EVEX_W_0F5E_P_2, EVEX_W_0F5F_P_0, EVEX_W_0F5F_P_2, + EVEX_W_0FC2_P_0, EVEX_W_0FC2_P_2, EVEX_W_0FC6_P_0, + EVEX_W_0FC6_P_2): Delete. + (print_insn): Add EVEX.W vs embedded prefix consistency check + to prefix validation. + * i386-dis-evex.h (evex_table): Don't further descend for + vunpcklpX, vunpckhpX, vmovapX, vandpX, vandnpX, vorpX, vxorpX, + and vshufpX. Continue with MOD decoding for opcodes 0F13, 0F17, + and 0F2B. + * i386-dis-evex-mod.h: Add/adjust vmovlpX/vmovhpX entries. + * i386-dis-evex-prefix.h: Don't further descend for vmovupX, + vucomisX, vcomisX, vsqrtpX, vaddpX, vmulpX, vsubpX, vminpX, + vdivpX, vmaxpX, and vcmppX. Continue with MOD decoding for cases + 2 of PREFIX_EVEX_0F12, PREFIX_EVEX_0F16, and PREFIX_EVEX_0F29. + Drop PREFIX_EVEX_0F13, PREFIX_EVEX_0F14, PREFIX_EVEX_0F15, + PREFIX_EVEX_0F17, PREFIX_EVEX_0F28, PREFIX_EVEX_0F2B, + PREFIX_EVEX_0F54, PREFIX_EVEX_0F55, PREFIX_EVEX_0F56, + PREFIX_EVEX_0F57, and PREFIX_EVEX_0FC6 entries. + * i386-dis-evex-w.h: Drop EVEX_W_0F10_P_0, EVEX_W_0F10_P_2, + EVEX_W_0F11_P_0, EVEX_W_0F11_P_2, EVEX_W_0F12_P_0_M_0, + EVEX_W_0F12_P_2, EVEX_W_0F12_P_3, EVEX_W_0F13_P_0, + EVEX_W_0F13_P_2, EVEX_W_0F14_P_0, EVEX_W_0F14_P_2, + EVEX_W_0F15_P_0, EVEX_W_0F15_P_2, EVEX_W_0F16_P_0_M_0, + EVEX_W_0F16_P_2, EVEX_W_0F17_P_0, EVEX_W_0F17_P_2, + EVEX_W_0F28_P_0, EVEX_W_0F28_P_2, EVEX_W_0F29_P_0, + EVEX_W_0F29_P_2, EVEX_W_0F2B_P_0, EVEX_W_0F2B_P_2, + EVEX_W_0F2E_P_0, EVEX_W_0F2E_P_2, EVEX_W_0F2F_P_0, + EVEX_W_0F2F_P_2, EVEX_W_0F51_P_0, EVEX_W_0F51_P_2, + EVEX_W_0F54_P_0, EVEX_W_0F54_P_2, EVEX_W_0F55_P_0, + EVEX_W_0F55_P_2, EVEX_W_0F56_P_0, EVEX_W_0F56_P_2, + EVEX_W_0F57_P_0, EVEX_W_0F57_P_2, EVEX_W_0F58_P_0, + EVEX_W_0F58_P_2, EVEX_W_0F59_P_0, EVEX_W_0F59_P_2, + EVEX_W_0F5C_P_0, EVEX_W_0F5C_P_2, EVEX_W_0F5D_P_0, + EVEX_W_0F5D_P_2, EVEX_W_0F5E_P_0, EVEX_W_0F5E_P_2, + EVEX_W_0F5F_P_0, EVEX_W_0F5F_P_2, EVEX_W_0FC2_P_0, + EVEX_W_0FC2_P_2, EVEX_W_0FC6_P_0, and EVEX_W_0FC6_P_2 entries. + +2020-06-09 Jan Beulich + + * i386-dis.c (vex_table): Use PREFIX_OPCODE for vunpcklpX, + vunpckhpX, vmovapX, vandpX, vandnpX, vorpX, vxorpX and vshufpX. + (vex_len_table) : Likewise for vmovlpX, vmovhpX, vmovntpX, and + vmovmskpX. + (print_insn): Drop pointless check against bad_opcode. Split + prefix validation into legacy and VEX-and-alike parts. + (putop): Re-work 'X' macro handling. + +2020-06-09 Jan Beulich + + * i386-dis.c (MOD_0F51): Rename to ... + (MOD_0F50): ... this. + +2020-06-08 Alex Coplan + + * arm-dis.c (arm_opcodes): Add dfb. + (thumb32_opcodes): Add dfb. + +2020-06-08 Jan Beulich + + * i386-opc.h (reg_entry): Const-qualify reg_name field. + +2020-06-06 Alan Modra + + * ppc-dis.c (ppc_opts): Accept -mpwr10/-Mpwr10. + +2020-06-05 Alan Modra + + * cgen-dis.c (hash_insn_array): Increase size of buf. Assert + size is large enough. + +2020-06-04 Jose E. Marchesi + + * disassemble.c (disassemble_init_for_target): Set endian_code for + bpf targets. + * bpf-desc.c: Regenerate. + * bpf-opc.c: Likewise. + * bpf-dis.c: Likewise. + +2020-06-03 Jose E. Marchesi + + * cgen-opc.c (cgen_get_insn_value): Get an `endian' argument. + (cgen_put_insn_value): Likewise. + (cgen_lookup_insn): Pass endianness to cgen_{get,put}_insn_value. + * cgen-dis.in (print_insn): Likewise. + * cgen-ibld.in (insert_1): Likewise. + (insert_1): Likewise. + (insert_insn_normal): Likewise. + (extract_1): Likewise. + * bpf-dis.c: Regenerate. + * bpf-ibld.c: Likewise. + * bpf-ibld.c: Likewise. + * cgen-dis.in: Likewise. + * cgen-ibld.in: Likewise. + * cgen-opc.c: Likewise. + * epiphany-dis.c: Likewise. + * epiphany-ibld.c: Likewise. + * fr30-dis.c: Likewise. + * fr30-ibld.c: Likewise. + * frv-dis.c: Likewise. + * frv-ibld.c: Likewise. + * ip2k-dis.c: Likewise. + * ip2k-ibld.c: Likewise. + * iq2000-dis.c: Likewise. + * iq2000-ibld.c: Likewise. + * lm32-dis.c: Likewise. + * lm32-ibld.c: Likewise. + * m32c-dis.c: Likewise. + * m32c-ibld.c: Likewise. + * m32r-dis.c: Likewise. + * m32r-ibld.c: Likewise. + * mep-dis.c: Likewise. + * mep-ibld.c: Likewise. + * mt-dis.c: Likewise. + * mt-ibld.c: Likewise. + * or1k-dis.c: Likewise. + * or1k-ibld.c: Likewise. + * xc16x-dis.c: Likewise. + * xc16x-ibld.c: Likewise. + * xstormy16-dis.c: Likewise. + * xstormy16-ibld.c: Likewise. + +2020-06-04 Jose E. Marchesi + + * cgen-dis.in (cpu_desc_list): New field `insn_endian'. + (print_insn_): Handle instruction endian. + * bpf-dis.c: Regenerate. + * bpf-desc.c: Regenerate. + * epiphany-dis.c: Likewise. + * epiphany-desc.c: Likewise. + * fr30-dis.c: Likewise. + * fr30-desc.c: Likewise. + * frv-dis.c: Likewise. + * frv-desc.c: Likewise. + * ip2k-dis.c: Likewise. + * ip2k-desc.c: Likewise. + * iq2000-dis.c: Likewise. + * iq2000-desc.c: Likewise. + * lm32-dis.c: Likewise. + * lm32-desc.c: Likewise. + * m32c-dis.c: Likewise. + * m32c-desc.c: Likewise. + * m32r-dis.c: Likewise. + * m32r-desc.c: Likewise. + * mep-dis.c: Likewise. + * mep-desc.c: Likewise. + * mt-dis.c: Likewise. + * mt-desc.c: Likewise. + * or1k-dis.c: Likewise. + * or1k-desc.c: Likewise. + * xc16x-dis.c: Likewise. + * xc16x-desc.c: Likewise. + * xstormy16-dis.c: Likewise. + * xstormy16-desc.c: Likewise. + +2020-06-03 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-06-03 Nelson Chu + + * riscv-opc.c (riscv_get_isa_spec_class): Change bfd_boolean to int. + (riscv_get_priv_spec_class): Likewise. + +2020-06-01 Alan Modra + + * bpf-desc.c: Regenerate. + +2020-05-28 Jose E. Marchesi + David Faust + + * bpf-desc.c: Regenerate. + * bpf-opc.h: Likewise. + * bpf-opc.c: Likewise. + * bpf-dis.c: Likewise. + +2020-05-28 Alan Modra + + * nios2-dis.c (nios2_print_insn_arg): Avoid shift left of negative + values. + +2020-05-28 Alan Modra + + * ns32k-dis.c (print_insn_arg): Handle d value of 'f' for + immediates. + (print_insn_ns32k): Revert last change. + +2020-05-28 Nick Clifton + + * ns32k-dis.c (print_insn_ns32k): Change the arg_bufs array to + static. + +2020-05-26 Sandra Loosemore + + Fix extraction of signed constants in nios2 disassembler (again). + + * nios2-dis.c (nios2_print_insn_arg): Add explicit casts to + extractions of signed fields. + +2020-05-26 Stefan Schulze Frielinghaus + + * s390-opc.txt: Relocate vector load/store instructions with + additional alignment parameter and change architecture level + constraint from z14 to z13. + +2020-05-21 Alan Modra + + * arc-ext.c: Replace "if (x) free (x)" with "free (x)" throughout. + * sparc-dis.c: Likewise. + * tic4x-dis.c: Likewise. + * xtensa-dis.c: Likewise. + * bpf-desc.c: Regenerate. + * epiphany-desc.c: Regenerate. + * fr30-desc.c: Regenerate. + * frv-desc.c: Regenerate. + * ip2k-desc.c: Regenerate. + * iq2000-desc.c: Regenerate. + * lm32-desc.c: Regenerate. + * m32c-desc.c: Regenerate. + * m32r-desc.c: Regenerate. + * mep-asm.c: Regenerate. + * mep-desc.c: Regenerate. + * mt-desc.c: Regenerate. + * or1k-desc.c: Regenerate. + * xc16x-desc.c: Regenerate. + * xstormy16-desc.c: Regenerate. + +2020-05-20 Nelson Chu + + * riscv-opc.c (riscv_ext_version_table): The table used to store + all information about the supported spec and the corresponding ISA + versions. Currently, only Zicsr is supported to verify the + correctness of Z sub extension settings. Others will be supported + in the future patches. + (struct isa_spec_t, isa_specs): List for all supported ISA spec + classes and the corresponding strings. + (riscv_get_isa_spec_class): New function. Get the corresponding ISA + spec class by giving a ISA spec string. + * riscv-opc.c (struct priv_spec_t): New structure. + (struct priv_spec_t priv_specs): List for all supported privilege spec + classes and the corresponding strings. + (riscv_get_priv_spec_class): New function. Get the corresponding + privilege spec class by giving a spec string. + (riscv_get_priv_spec_name): New function. Get the corresponding + privilege spec string by giving a CSR version class. + * riscv-dis.c: Updated since DECLARE_CSR is changed. + * riscv-dis.c: Add new disassembler option -Mpriv-spec to dump the CSR + according to the chosen version. Build a hash table riscv_csr_hash to + store the valid CSR for the chosen pirv verison. Dump the direct + CSR address rather than it's name if it is invalid. + (parse_riscv_dis_option_without_args): New function. Parse the options + without arguments. + (parse_riscv_dis_option): Call parse_riscv_dis_option_without_args to + parse the options without arguments first, and then handle the options + with arguments. Add the new option -Mpriv-spec, which has argument. + * riscv-dis.c (print_riscv_disassembler_options): Add description + about the new OBJDUMP option. + +2020-05-19 Peter Bergner + + * ppc-opc.c (insert_ls, extract_ls): Handle 3-bit L fields and new + WC values on POWER10 sync, dcbf and wait instructions. + (insert_pl, extract_pl): New functions. + (L2OPT, LS, WC): Use insert_ls and extract_ls. + (LS3): New , 3-bit L for sync. + (LS3, L3OPT): New, 3-bit L for sync and dcbf. + (SC2, PL): New, 2-bit SC and PL for sync and wait. + (XWCPL_MASK, XL3RT_MASK, XSYNCLS_MASK): New instruction masks. + (XOPL3, XWCPL, XSYNCLS): New opcode macros. + (powerpc_opcodes) : New extended mnemonics. + : Enable PL operand on POWER10. + : Enable L3OPT operand on POWER10. + : Enable SC2 operand on POWER10. + +2020-05-19 Stafford Horne + + PR 25184 + * or1k-asm.c: Regenerate. + * or1k-desc.c: Regenerate. + * or1k-desc.h: Regenerate. + * or1k-dis.c: Regenerate. + * or1k-ibld.c: Regenerate. + * or1k-opc.c: Regenerate. + * or1k-opc.h: Regenerate. + * or1k-opinst.c: Regenerate. + +2020-05-11 Alan Modra + + * ppc-opc (powerpc_opcodes): Add xscmpeqqp, xscmpgeqp, xscmpgtqp, + xsmaxcqp, xsmincqp. + +2020-05-11 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Add lxvrbx, lxvrhx, lxvrwx, lxvrdx, + stxvrbx, stxvrhx, stxvrwx, stxvrdx. + +2020-05-11 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Add xvtlsbb. + +2020-05-11 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Add vstribl, vstribr, vstrihl, vstrihr, + vclrlb, vclrrb, vstribl., vstribr., vstrihl., vstrihr.. + +2020-05-11 Peter Bergner + + * ppc-opc.c (powerpc_opcodes) : New + mnemonics. + +2020-05-11 Alan Modra + + * ppc-opc.c (UIM8, P_U8XX4_MASK): Define. + (powerpc_opcodes): Add vgnb, vcfuged, vpextd, vpdepd, vclzdm, + vctzdm, cntlzdm, pdepd, pextd, cfuged, cnttzdm. + (prefix_opcodes): Add xxeval. + +2020-05-11 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Add xxgenpcvbm, xxgenpcvhm, + xxgenpcvwm, xxgenpcvdm. + +2020-05-11 Alan Modra + + * ppc-opc.c (MP, VXVAM_MASK): Define. + (VXVAPS_MASK): Use VXVA_MASK. + (powerpc_opcodes): Add mtvsrbmi, vexpandbm, vexpandhm, vexpandwm, + vexpanddm, vexpandqm, vextractbm, vextracthm, vextractwm, + vextractdm, vextractqm, mtvsrbm, mtvsrhm, mtvsrwm, mtvsrdm, mtvsrqm, + vcntmbb, vcntmbh, vcntmbw, vcntmbd. + +2020-05-11 Alan Modra + Peter Bergner + + * ppc-opc.c (insert_xa6a, extract_xa6a, insert_xb6a, extract_xb6a): + New functions. + (powerpc_operands): Define ACC, PMSK8, PMSK4, PMSK2, XMSK, YMSK, + YMSK2, XA6a, XA6ap, XB6a entries. + (PMMIRR, P_X_MASK, P_XX1_MASK, P_GER_MASK): Define + (P_GER2_MASK, P_GER4_MASK, P_GER8_MASK, P_GER64_MASK): Define. + (PPCVSX4): Define. + (powerpc_opcodes): Add xxmfacc, xxmtacc, xxsetaccz, + xvi8ger4pp, xvi8ger4, xvf16ger2pp, xvf16ger2, xvf32gerpp, xvf32ger, + xvi4ger8pp, xvi4ger8, xvi16ger2spp, xvi16ger2s, xvbf16ger2pp, + xvbf16ger2, xvf64gerpp, xvf64ger, xvi16ger2, xvf16ger2np, + xvf32gernp, xvi8ger4spp, xvi16ger2pp, xvbf16ger2np, xvf64gernp, + xvf16ger2pn, xvf32gerpn, xvbf16ger2pn, xvf64gerpn, xvf16ger2nn, + xvf32gernn, xvbf16ger2nn, xvf64gernn, xvcvbf16sp, xvcvspbf16. + (prefix_opcodes): Add pmxvi8ger4pp, pmxvi8ger4, pmxvf16ger2pp, + pmxvf16ger2, pmxvf32gerpp, pmxvf32ger, pmxvi4ger8pp, pmxvi4ger8, + pmxvi16ger2spp, pmxvi16ger2s, pmxvbf16ger2pp, pmxvbf16ger2, + pmxvf64gerpp, pmxvf64ger, pmxvi16ger2, pmxvf16ger2np, pmxvf32gernp, + pmxvi8ger4spp, pmxvi16ger2pp, pmxvbf16ger2np, pmxvf64gernp, + pmxvf16ger2pn, pmxvf32gerpn, pmxvbf16ger2pn, pmxvf64gerpn, + pmxvf16ger2nn, pmxvf32gernn, pmxvbf16ger2nn, pmxvf64gernn. + +2020-05-11 Alan Modra + + * ppc-opc.c (insert_imm32, extract_imm32): New functions. + (insert_xts, extract_xts): New functions. + (IMM32, UIM3, IX, UIM5, SH3, XTS, P8RR): Define. + (P_XX4_MASK, P_UXX4_MASK, VSOP, P_VS_MASK, P_VSI_MASK): Define. + (VXRC_MASK, VXSH_MASK): Define. + (powerpc_opcodes): Add vinsbvlx, vsldbi, vextdubvlx, vextdubvrx, + vextduhvlx, vextduhvrx, vextduwvlx, vextduwvrx, vextddvlx, + vextddvrx, vinshvlx, vinswvlx, vinsw, vinsbvrx, vinshvrx, + vinswvrx, vinsd, vinsblx, vsrdbi, vinshlx, vinswlx, vinsdlx, + vinsbrx, vinshrx, vinswrx, vinsdrx, lxvkq. + (prefix_opcodes): Add xxsplti32dx, xxspltidp, xxspltiw, xxblendvb, + xxblendvh, xxblendvw, xxblendvd, xxpermx. + +2020-05-11 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Add vrlq, vdivuq, vmsumcud, vrlqmi, + vmuloud, vcmpuq, vslq, vdivsq, vcmpsq, vrlqnm, vcmpequq, vmulosd, + vsrq, vdiveuq, vcmpgtuq, vmuleud, vsraq, vdivesq, vcmpgtsq, vmulesd, + vcmpequq., vextsd2q, vmoduq, vcmpgtuq., vmodsq, vcmpgtsq., xscvqpuqz, + xscvuqqp, xscvqpsqz, xscvsqqp, dcffixqq, dctfixqq. + +2020-05-11 Alan Modra + + * ppc-opc.c (insert_xtp, extract_xtp): New functions. + (XTP, DQXP, DQXP_MASK): Define. + (powerpc_opcodes): Add lxvp, stxvp, lxvpx, stxvpx. + (prefix_opcodes): Add plxvp and pstxvp. + +2020-05-11 Alan Modra + + * ppc-opc.c (powerpc_opcodes): Add vdivuw, vdivud, vdivsw, vmulld, + vdivsd, vmulhuw, vdiveuw, vmulhud, vdiveud, vmulhsw, vdivesw, + vmulhsd, vdivesd, vmoduw, vmodud, vmodsw, vmodsd. + +2020-05-11 Peter Bergner + + * ppc-opc.c (powerpc_opcodes) : New mnemonics. + +2020-05-11 Peter Bergner + + * ppc-opc.c (insert_l1opt, extract_l1opt): New functions. + (L1OPT): Define. + (powerpc_opcodes) : Add L operand for cpu POWER10. + +2020-05-11 Peter Bergner + + * ppc-opc.c (powerpc_opcodes) : Add variant with L operand. + +2020-05-11 Alan Modra + + * ppc-dis.c (powerpc_init_dialect): Default to "power10". + +2020-05-11 Alan Modra + + * ppc-dis.c (ppc_opts): Add "power10" entry. + (print_insn_powerpc): Update for PPC_OPCODE_POWER10 renaming. + * ppc-opc.c (POWER10): Rename from POWERXX. Update all uses. + +2020-05-11 Nick Clifton + + * po/fr.po: Updated French translation. + +2020-04-30 Alex Coplan + + * aarch64-opc.h (enum aarch64_field_kind): Add FLD_imm16_2. + * aarch64-opc.c (fields): Add entry for FLD_imm16_2. + (operand_general_constraint_met_p): validate + AARCH64_OPND_UNDEFINED. + * aarch64-tbl.h (aarch64_opcode_table): Add udf instruction, entry + for FLD_imm16_2. + * aarch64-asm-2.c: Regenerated. + * aarch64-dis-2.c: Regenerated. + * aarch64-opc-2.c: Regenerated. + +2020-04-29 Nick Clifton + + PR 22699 + * sh-opc.h: Also use unsigned 8-bit immediate values for the LDRC + and SETRC insns. + +2020-04-29 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2020-04-29 Nick Clifton + + PR 22699 + * sh-opc.h (IMM0_8): Replace with IMM0_8S and IMM0_8U. Use + IMM0_8S for arithmetic insns and IMM0_8U for logical insns. + * sh-dis.c (print_insn_sh): Change IMM0_8 case to IMM0_8S and add + IMM0_8U case. + +2020-04-21 Andreas Schwab + + PR 25848 + * m68k-opc.c (m68k_opcodes): Allow pc-rel for second operand of + cmpi only on m68020up and cpu32. + +2020-04-20 Sudakshina Das + + * aarch64-asm.c (aarch64_ins_none): New. + * aarch64-asm.h (ins_none): New declaration. + * aarch64-dis.c (aarch64_ext_none): New. + * aarch64-dis.h (ext_none): New declaration. + * aarch64-opc.c (aarch64_print_operand): Update case for + AARCH64_OPND_BARRIER_PSB. + * aarch64-tbl.h (aarch64_opcode_table): Add tsb. + (AARCH64_OPERANDS): Update inserter/extracter for + AARCH64_OPND_BARRIER_PSB to use new dummy functions. + * aarch64-asm-2.c: Regenerated. + * aarch64-dis-2.c: Regenerated. + * aarch64-opc-2.c: Regenerated. + +2020-04-20 Sudakshina Das + + * aarch64-tbl.h (aarch64_feature_bti, BTI, BTI_INSN): Remove. + (aarch64_feature_ras, RAS): Likewise. + (aarch64_feature_stat_profile, STAT_PROFILE): Likewise. + (aarch64_opcode_table): Update bti, xpaclri, pacia1716, pacib1716, + autia1716, autib1716, esb, psb, dgh, paciaz, paciasp, pacibz, pacibsp, + autiaz, autiasp, autibz, autibsp to be CORE_INSN. + * aarch64-asm-2.c: Regenerated. + * aarch64-dis-2.c: Regenerated. + * aarch64-opc-2.c: Regenerated. + +2020-04-17 Fredrik Strupe + + * arm-dis.c (neon_opcodes): Fix VDUP instruction masks. + (print_insn_neon): Support disassembly of conditional + instructions. + +2020-02-16 David Faust + + * bpf-desc.c: Regenerate. + * bpf-desc.h: Likewise. + * bpf-opc.c: Regenerate. + * bpf-opc.h: Likewise. + +2020-04-07 Lili Cui + + * i386-dis.c (enum): Add PREFIX_0F01_REG_5_MOD_3_RM_1, + (prefix_table): New instructions (see prefixes above). + (rm_table): Likewise + * i386-gen.c (cpu_flag_init): Add CPU_TSXLDTRK_FLAGS, + CPU_ANY_TSXLDTRK_FLAGS. + (cpu_flags): Add CpuTSXLDTRK. + * i386-opc.h (enum): Add CpuTSXLDTRK. + (i386_cpu_flags): Add cputsxldtrk. + * i386-opc.tbl: Add XSUSPLDTRK insns. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2020-04-02 Lili Cui + + * i386-dis.c (prefix_table): New instructions serialize. + * i386-gen.c (cpu_flag_init): Add CPU_SERIALIZE_FLAGS, + CPU_ANY_SERIALIZE_FLAGS. + (cpu_flags): Add CpuSERIALIZE. + * i386-opc.h (enum): Add CpuSERIALIZE. + (i386_cpu_flags): Add cpuserialize. + * i386-opc.tbl: Add SERIALIZE insns. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2020-03-26 Alan Modra + + * disassemble.h (opcodes_assert): Declare. + (OPCODES_ASSERT): Define. + * disassemble.c: Don't include assert.h. Include opintl.h. + (opcodes_assert): New function. + * h8300-dis.c (bfd_h8_disassemble_init): Use OPCODES_ASSERT. + (bfd_h8_disassemble): Reduce size of data array. Correctly + calculate maxlen. Omit insn decoding when insn length exceeds + maxlen. Exit from nibble loop when looking for E, before + accessing next data byte. Move processing of E outside loop. + Replace tests of maxlen in loop with assertions. + +2020-03-26 Alan Modra + + * arc-dis.c (find_format): Init needs_limm. Simplify use of limm. + +2020-03-25 Alan Modra + + * z80-dis.c (suffix): Init mybuf. + +2020-03-22 Alan Modra + + * h8300-dis.c (bfd_h8_disassemble): Limit data[] access to that + successflly read from section. + +2020-03-22 Alan Modra + + * arc-dis.c (find_format): Use ISO C string concatenation rather + than line continuation within a string. Don't access needs_limm + before testing opcode != NULL. + +2020-03-22 Alan Modra + + * ns32k-dis.c (print_insn_arg): Update comment. + (print_insn_ns32k): Reduce size of index_offset array, and + initialize, passing -1 to print_insn_arg for args that are not + an index. Don't exit arg loop early. Abort on bad arg number. + +2020-03-22 Alan Modra + + * s12z-dis.c (abstract_read_memory): Don't print error on EOI. + * s12z-opc.c: Formatting. + (operands_f): Return an int. + (opr_n_bytes_p1): Return -1 on reaching buffer memory limit. + (opr_n_bytes2, bfextins_n_bytes, mul_n_bytes, bm_n_bytes), + (shift_n_bytes, mov_imm_opr_n_bytes, loop_prim_n_bytes), + (exg_sex_discrim): Likewise. + (create_immediate_operand, create_bitfield_operand), + (create_register_operand_with_size, create_register_all_operand), + (create_register_all16_operand, create_simple_memory_operand), + (create_memory_operand, create_memory_auto_operand): Don't + segfault on malloc failure. + (z_ext24_decode): Return an int status, negative on fail, zero + on success. + (x_imm1, imm1_decode, trap_decode, z_opr_decode, z_opr_decode2), + (imm1234, reg_s_imm, reg_s_opr, z_imm1234_8base, z_imm1234_0base), + (z_tfr, z_reg, reg_xy, lea_reg_xys_opr, lea_reg_xys, rel_15_7), + (decode_rel_15_7, cmp_xy, sub_d6_x_y, sub_d6_y_x), + (ld_18bit_decode, mul_decode, bm_decode, bm_rel_decode), + (mov_imm_opr, ld_18bit_decode, exg_sex_decode), + (loop_primitive_decode, shift_decode, psh_pul_decode), + (bit_field_decode): Similarly. + (z_decode_signed_value, decode_signed_value): Similarly. Add arg + to return value, update callers. + (x_opr_decode_with_size): Check all reads, returning NULL on fail. + Don't segfault on NULL operand. + (decode_operation): Return OP_INVALID on first fail. + (decode_s12z): Check all reads, returning -1 on fail. + +2020-03-20 Alan Modra + + * metag-dis.c (print_insn_metag): Don't ignore status from + read_memory_func. + +2020-03-20 Alan Modra + + * nds32-dis.c (print_insn_nds32): Remove unnecessary casts. + Initialize parts of buffer not written when handling a possible + 2-byte insn at end of section. Don't attempt decoding of such + an insn by the 4-byte machinery. + +2020-03-20 Alan Modra + + * ppc-dis.c (print_insn_powerpc): Only clear needed bytes of + partially filled buffer. Prevent lookup of 4-byte insns when + only VLE 2-byte insns are possible due to section size. Print + ".word" rather than ".long" for 2-byte leftovers. + +2020-03-17 Sergey Belyashov + + PR 25641 + * z80-dis.c: Fix disassembling ED+A4/AC/B4/BC opcodes. + +2020-03-13 Jan Beulich + + * i386-dis.c (X86_64_0D): Rename to ... + (X86_64_0E): ... this. + +2020-03-09 H.J. Lu + + * Makefile.am ($(srcdir)/i386-init.h): Also pass -P to $(CPP). + * Makefile.in: Regenerated. + +2020-03-09 Jan Beulich + + * i386-opc.tbl (avx_irel): New. Use is for AVX512 vpcmp* + 3-operand pseudos. + * i386-tbl.h: Re-generate. + +2020-03-09 Jan Beulich + + * i386-opc.tbl (xop_elem, xop_irel, xop_sign): New. Use them for XOP vpcom*, + vprot*, vpsha*, and vpshl*. + * i386-tbl.h: Re-generate. + +2020-03-09 Jan Beulich + + * i386-opc.tbl (avx_frel): New. Use it for AVX/AVX512 vcmpps, + vcmpss, vcmppd, and vcmpsd 3-operand pseudo-ops. + * i386-tbl.h: Re-generate. + +2020-03-09 Jan Beulich + + * i386-gen.c (set_bitfield): Ignore zero-length field names. + * i386-opc.tbl (sse_frel): New. Use it for SSE/SSE2 cmpps, + cmpss, cmppd, and cmpsd 2-operand pseudo-ops. + * i386-tbl.h: Re-generate. + +2020-03-09 Jan Beulich + + * i386-gen.c (struct template_arg, struct template_instance, + struct template_param, struct template, templates, + parse_template, expand_templates): New. + (process_i386_opcodes): Various local variables moved to + expand_templates. Call parse_template and expand_templates. + * i386-opc.tbl (cc): New. Use it for Jcc, SETcc, and CMOVcc. + * i386-tbl.h: Re-generate. + +2020-03-06 Jan Beulich + + * i386-opc.tbl (vcvtdq2pd, vcvtps2pd, vcvtudq2pd, vcvtps2ph, + vcvtps2qq, vcvtps2uqq, vcvttps2qq, vcvttps2uqq): Fold separate + register and memory source templates. Replace VexW= by VexW* + where applicable. + * i386-tbl.h: Re-generate. + +2020-03-06 Jan Beulich + + * i386-opc.tbl: Drop IgnoreSize from various SIMD insns. Replace + VexW= by VexW* and VexVVVV=1 by just VexVVVV where applicable. + * i386-tbl.h: Re-generate. + +2020-03-06 Jan Beulich + + * i386-opc.tbl (fildll, fistpll, fisttpll): Add ATTSyntax. + * i386-tbl.h: Re-generate. + +2020-03-06 Jan Beulich + + * i386-opc.tbl (movq): Drop NoRex64 from XMM/XMM SSE2AVX variants. + (movmskps, pextrw, pinsrw, pmovmskb, movmskpd, extractps, + pextrb, pinsrb, roundsd): Drop NoRex64 and where applicable use + VexW0 on SSE2AVX variants. + (vmovq): Drop NoRex64 from XMM/XMM variants. + (vextractps, vmovmskpd, vmovmskps, vpextrb, vpextrw, vpinsrb, + vpinsrw, vpmovmskb, vroundsd, vpmovmskb): Drop NoRex64 and where + applicable use VexW0. + * i386-tbl.h: Re-generate. + +2020-03-06 Jan Beulich + + * i386-gen.c (opcode_modifiers): Remove Rex64 field. + * i386-opc.h (Rex64): Delete. + (struct i386_opcode_modifier): Remove rex64 field. + * i386-opc.tbl (crc32): Drop Rex64. + Replace Rex64 with Size64 everywhere else. + * i386-tbl.h: Re-generate. + +2020-03-06 Jan Beulich + + * i386-dis.c (OP_E_memory): Exclude recording of used address + prefix for "bnd" modes only in 64-bit mode. Don't decode 16-bit + addressed memory operands for MPX insns. + +2020-03-06 Jan Beulich + + * i386-opc.tbl (movmskps, mwait, vmread, vmwrite, invept, + invvpid, invpcid, rdfsbase, rdgsbase, wrfsbase, wrgsbase, adcx, + adox, mwaitx, rdpid, movdiri): Add IgnoreSize. + (ptwrite): Split into non-64-bit and 64-bit forms. + * i386-tbl.h: Re-generate. + +2020-03-06 Jan Beulich + + * i386-opc.tbl (tpause, umwait): Add IgnoreSize. Add 3-operand + template. + * i386-tbl.h: Re-generate. + +2020-03-04 Jan Beulich + + * i386-dis.c (PREFIX_0F01_REG_3_RM_1): New. + (prefix_table): Move vmmcall here. Add vmgexit. + (rm_table): Replace vmmcall entry by prefix_table[] escape. + * i386-gen.c (cpu_flag_init): Add CPU_SEV_ES_FLAGS entry. + (cpu_flags): Add CpuSEV_ES entry. + * i386-opc.h (CpuSEV_ES): New. + (union i386_cpu_flags): Add cpusev_es field. + * i386-opc.tbl (vmgexit): New. + * i386-init.h, i386-tbl.h: Re-generate. + +2020-03-03 H.J. Lu + + * i386-gen.c (opcode_modifiers): Replace IgnoreSize/DefaultSize + with MnemonicSize. + * i386-opc.h (IGNORESIZE): New. + (DEFAULTSIZE): Likewise. + (IgnoreSize): Removed. + (DefaultSize): Likewise. + (MnemonicSize): New. + (i386_opcode_modifier): Replace ignoresize/defaultsize with + mnemonicsize. + * i386-opc.tbl (IgnoreSize): New. + (DefaultSize): Likewise. + * i386-tbl.h: Regenerated. + +2020-03-03 Sergey Belyashov + + PR 25627 + * z80-dis.c: Fix disassembly of LD IY,(HL) and D (HL),IX + instructions. + +2020-03-03 H.J. Lu + + PR gas/25622 + * i386-opc.tbl: Add IgnoreSize to cvtsi2sd, cvtsi2ss, vcvtsi2sd, + vcvtsi2ss, vcvtusi2sd and vcvtusi2ss for AT&T syntax. + * i386-tbl.h: Regenerated. + +2020-02-26 Alan Modra + + * aarch64-asm.c: Indent labels correctly. + * aarch64-dis.c: Likewise. + * aarch64-gen.c: Likewise. + * aarch64-opc.c: Likewise. + * alpha-dis.c: Likewise. + * i386-dis.c: Likewise. + * nds32-asm.c: Likewise. + * nfp-dis.c: Likewise. + * visium-dis.c: Likewise. + +2020-02-25 Claudiu Zissulescu + + * arc-regs.h (int_vector_base): Make it available for all ARC + CPUs. + +2020-02-20 Nelson Chu + + * riscv-dis.c (print_insn_args): Updated since the DECLARE_CSR is + changed. + +2020-02-19 Nelson Chu + + * riscv-opc.c (riscv_opcodes): Convert add/addi to the compressed + c.mv/c.li if rs1 is zero. + +2020-02-17 H.J. Lu + + * i386-gen.c (cpu_flag_init): Replace CpuABM with + CpuLZCNT|CpuPOPCNT. Add CpuPOPCNT to CPU_SSE4_2_FLAGS. Add + CPU_POPCNT_FLAGS. + (cpu_flags): Remove CpuABM. Add CpuPOPCNT. + * i386-opc.h (CpuABM): Removed. + (CpuPOPCNT): New. + (i386_cpu_flags): Remove cpuabm. Add cpupopcnt. + * i386-opc.tbl: Replace CpuABM|CpuSSE4_2 with CpuPOPCNT on + popcnt. Remove CpuABM from lzcnt. + * i386-init.h: Regenerated. + * i386-tbl.h: Likewise. + +2020-02-17 Jan Beulich + + * i386-opc.tbl (vcvtsi2sd, vcvtsi2ss, vcvtusi2sd, vcvtusi2ss): + Fold CpuNo64 and Cpu64 templates. Use VexLIG/EVexLIG and VexW0/ + VexW1 instead of open-coding them. + * i386-tbl.h: Re-generate. + +2020-02-17 Jan Beulich + + * i386-opc.tbl (AddrPrefixOpReg): Define. + (monitor, invlpga, vmload, vmrun, vmsave, clzero, monitorx, + umonitor, movdir64b, enqcmd, enqcmds): Fold Cpu64 and CpuNo64 + templates. Drop NoRex64. + * i386-tbl.h: Re-generate. + +2020-02-17 Jan Beulich + + PR gas/6518 + * i386-opc.tbl (vcvtpd2dq, vcvtpd2ps, vcvttpd2dq, vcvtpd2udq, + vcvttpd2udq, vcvtqq2ps, vcvtuqq2ps): Split XMM/YMM source forms + into Intel syntax instance (with Unpsecified) and AT&T one + (without). + (vcvtneps2bf16): Likewise, along with folding the two so far + separate ones. + * i386-tbl.h: Re-generate. + +2020-02-16 H.J. Lu + + * i386-gen.c (cpu_flag_init): Remove CPU_ANY_SSE3_FLAGS from + CPU_ANY_SSE4A_FLAGS. + +2020-02-17 Alan Modra + + * i386-gen.c (cpu_flag_init): Correct last change. + +2020-02-16 H.J. Lu + + * i386-gen.c (cpu_flag_init): Add CPU_ANY_SSE4A_FLAGS. Remove + CPU_ANY_SSE4_FLAGS. + +2020-02-14 H.J. Lu + + * i386-opc.tbl (movsx): Remove Intel syntax comments. + (movzx): Likewise. + +2020-02-14 Jan Beulich + + PR gas/25438 + * i386-opc.tbl (movsx): Fold patterns. Also allow Reg32 as + destination for Cpu64-only variant. + (movzx): Fold patterns. + * i386-tbl.h: Re-generate. + +2020-02-13 Jan Beulich + + * i386-gen.c (cpu_flag_init): Move CpuSSE4a from + CPU_ANY_SSE_FLAGS entry to CPU_ANY_SSE3_FLAGS one. Add + CPU_ANY_SSE4_FLAGS entry. + * i386-init.h: Re-generate. + +2020-02-12 Jan Beulich + + * i386-opc.tbl (vfpclasspd, vfpclassps): Add Intel sytax form + with Unspecified, making the present one AT&T syntax only. + * i386-tbl.h: Re-generate. + +2020-02-12 Jan Beulich + + * i386-opc.tbl (jmp): Fold CpuNo64 and Amd64 direct variants. + * i386-tbl.h: Re-generate. + +2020-02-12 Jan Beulich + + PR gas/24546 + * i386-dis.c (putop): Handle REX.W in '^' case for Intel64 mode. + * i386-opc.tbl (lfs, lgs, lss, lcall, ljmp): Split into + Amd64 and Intel64 templates. + (call, jmp): Likewise for far indirect variants. Dro + Unspecified. + * i386-tbl.h: Re-generate. + +2020-02-11 Jan Beulich + + * i386-gen.c (opcode_modifiers): Remove ShortForm entry. + * i386-opc.h (ShortForm): Delete. + (struct i386_opcode_modifier): Remove shortform field. + * i386-opc.tbl (mov, movabs, push, pop, xchg, inc, dec, fld, + fst, fstp, fxch, fcom, fcomp, fucom, fucomp, fadd, faddp, fsub, + fsubp, fsubr, fsubrp, fmul, fmulp, fdiv, fdivp, fdivr, fdivrp, + ffreep, bswap, fcmov*, fcomi, fcomip, fucomi, fucomip, movq): + Drop ShortForm. + * i386-tbl.h: Re-generate. + +2020-02-11 Jan Beulich + + * i386-opc.tbl (fcomi, fucomi, fcomip, fcompi, fucomip, + fucompi): Drop ShortForm from operand-less templates. + * i386-tbl.h: Re-generate. + +2020-02-11 Alan Modra + + * cgen-ibld.in (extract_normal): Set *valuep on all return paths. + * bpf-ibld.c, * epiphany-ibld.c, * fr30-ibld.c, * frv-ibld.c, + * ip2k-ibld.c, * iq2000-ibld.c, * lm32-ibld.c, * m32c-ibld.c, + * m32r-ibld.c, * mep-ibld.c, * mt-ibld.c, * or1k-ibld.c, + * xc16x-ibld.c, * xstormy16-ibld.c: Regenerate. + +2020-02-10 Matthew Malcomson + + * arm-dis.c (print_insn_cde): Define 'V' parse character. + (cde_opcodes): Add VCX* instructions. + +2020-02-10 Stam Markianos-Wright + Matthew Malcomson + + * arm-dis.c (struct cdeopcode32): New. + (CDE_OPCODE): New macro. + (cde_opcodes): New disassembly table. + (regnames): New option to table. + (cde_coprocs): New global variable. + (print_insn_cde): New + (print_insn_thumb32): Use print_insn_cde. + (parse_arm_disassembler_options): Parse coprocN args. + +2020-02-10 H.J. Lu + + PR gas/25516 + * i386-gen.c (opcode_modifiers): Replace AMD64 and Intel64 + with ISA64. + * i386-opc.h (AMD64): Removed. + (Intel64): Likewose. + (AMD64): New. + (INTEL64): Likewise. + (INTEL64ONLY): Likewise. + (i386_opcode_modifier): Replace amd64 and intel64 with isa64. + * i386-opc.tbl (Amd64): New. + (Intel64): Likewise. + (Intel64Only): Likewise. + Replace AMD64 with Amd64. Update sysenter/sysenter with + Cpu64 and Intel64Only. Remove AMD64 from sysenter/sysenter. + * i386-tbl.h: Regenerated. + +2020-02-07 Sergey Belyashov + + PR 25469 + * z80-dis.c: Add support for GBZ80 opcodes. + +2020-02-04 Alan Modra + + * d30v-dis.c (print_insn): Make "val" and "opnum" unsigned. + +2020-02-03 Alan Modra + + * m32c-ibld.c: Regenerate. + +2020-02-01 Alan Modra + + * frv-ibld.c: Regenerate. + +2020-01-31 Jan Beulich + + * i386-dis.c (EXxmm_mdq, xmm_mdq_mode): Delete. + (intel_operand_size, OP_EX): Drop xmm_mdq_mode case label. + (OP_E_memory): Replace xmm_mdq_mode case label by + vex_scalar_w_dq_mode one. + * i386-dis-evex-prefix.h: Replace EXxmm_mdq by EXVexWdqScalar. + +2020-01-31 Jan Beulich + + * i386-dis.c (EXVexWdq, vex_w_dq_mode): Delete. + (vex_vsib_d_w_dq_mode, vex_vsib_q_w_dq_mode, + vex_scalar_w_dq_mode): Don't refer to vex_w_dq_mode in comments. + (intel_operand_size): Drop vex_w_dq_mode case label. + +2020-01-31 Richard Sandiford + + * aarch64-tbl.h (aarch64_opcode): Set C_MAX_ELEM for SVE bfcvt. + Remove C_SCAN_MOVPRFX for SVE bfcvtnt. + +2020-01-30 Alan Modra + + * m32c-ibld.c: Regenerate. + +2020-01-30 Jose E. Marchesi + + * bpf-opc.c: Regenerate. + +2020-01-30 Jan Beulich + + * i386-dis.c (X86_64_C2, X86_64_C3): New enumerators. + (dis386): Use them to replace C2/C3 table entries. + (x86_64_table): Add X86_64_C2 and X86_64_C3 entries. + * i386-opc.tbl (ret): Split Cpu64 entries into AMD64 and Intel64 + ones. Use Size64 instead of DefaultSize on Intel64 ones. + * i386-tbl.h: Re-generate. + +2020-01-30 Jan Beulich + + * i386-opc.tbl (call): Drop DefaultSize from Intel64 JumpDword + forms. + (fldenv, fnstenv, fstenv, fnsave, fsave, frstor): Drop + DefaultSize. + * i386-tbl.h: Re-generate. + +2020-01-30 Alan Modra + + * tic4x-dis.c (tic4x_dp): Make unsigned. + +2020-01-27 H.J. Lu + Jan Beulich + + PR binutils/25445 + * i386-dis.c (MOVSXD_Fixup): New function. + (movsxd_mode): New enum. + (x86_64_table): Use MOVSXD_Fixup and movsxd_mode on movsxd. + (intel_operand_size): Handle movsxd_mode. + (OP_E_register): Likewise. + (OP_G): Likewise. + * i386-opc.tbl: Remove Rex64 and allow 32-bit destination + register on movsxd. Add movsxd with 16-bit destination register + for AMD64 and Intel64 ISAs. + * i386-tbl.h: Regenerated. + +2020-01-27 Tamar Christina + + PR 25403 + * aarch64-tbl.h (struct aarch64_opcode): Re-order cfinv. + * aarch64-asm-2.c: Regenerate + * aarch64-dis-2.c: Likewise. + * aarch64-opc-2.c: Likewise. + +2020-01-21 Jan Beulich + + * i386-opc.tbl (sysret): Drop DefaultSize. + * i386-tbl.h: Re-generate. + +2020-01-21 Jan Beulich + + * i386-opc.tbl (vcvtneps2bf16x): Add Broadcast, Xmmword, and + Dword. + (vcvtneps2bf16y): Add Broadcast, Ymmword, and Dword. + * i386-tbl.h: Re-generate. + +2020-01-20 Nick Clifton + + * po/de.po: Updated German translation. + * po/pt_BR.po: Updated Brazilian Portuguese translation. + * po/uk.po: Updated Ukranian translation. + +2020-01-20 Alan Modra + + * hppa-dis.c (fput_const): Remove useless cast. + +2020-01-20 Alan Modra + + * arm-dis.c (print_insn_arm): Wrap 'T' value. + +2020-01-18 Nick Clifton + + * configure: Regenerate. + * po/opcodes.pot: Regenerate. + +2020-01-18 Nick Clifton + + Binutils 2.34 branch created. + +2020-01-17 Christian Biesinger + + * opintl.h: Fix spelling error (seperate). + +2020-01-17 H.J. Lu + + * i386-opc.tbl: Add {vex} pseudo prefix. + * i386-tbl.h: Regenerated. + +2020-01-16 Andre Vieira + + PR 25376 + * arm-dis.c (coprocessor_opcodes): Use CORE_HIGH for MVE bits. + (neon_opcodes): Likewise. + (select_arm_features): Make sure we enable MVE bits when selecting + armv8.1-m.main. Make sure we do not enable MVE bits when not selecting + any architecture. + +2020-01-16 Jan Beulich + + * i386-opc.tbl: Drop stale comment from XOP section. + +2020-01-16 Jan Beulich + + * i386-opc.tbl (movq): Add VexWIG to SSE2AVX XMM->XMM forms. + (extractps): Add VexWIG to SSE2AVX forms. + * i386-tbl.h: Re-generate. + +2020-01-16 Jan Beulich + + * i386-opc.tbl (pextrq, pinsrq): Drop IgnoreSize and Qword. Drop + Size64 from and use VexW1 on SSE2AVX forms. + (vpextrq, vpinsrq): Drop IgnoreSize and Qword. Drop Size64 from + VEX-encoded forms. Add Cpu64 to EVEX-encoded forms. Use VexW1. + * i386-tbl.h: Re-generate. + +2020-01-15 Alan Modra + + * tic4x-dis.c (tic4x_version): Make unsigned long. + (optab, optab_special, registernames): New file scope vars. + (tic4x_print_register): Set up registernames rather than + malloc'd registertable. + (tic4x_disassemble): Delete optable and optable_special. Use + optab and optab_special instead. Throw away old optab, + optab_special and registernames when info->mach changes. + +2020-01-14 Sergey Belyashov + + PR 25377 + * z80-dis.c (suffix): Use .db instruction to generate double + prefix. + +2020-01-14 Alan Modra + + * z8k-dis.c (unpack_instr): Formatting. Cast unsigned short + values to unsigned before shifting. + +2020-01-13 Thomas Troeger + + * arm-dis.c (print_insn_arm): Fill in insn info fields for control + flow instructions. + (print_insn_thumb16, print_insn_thumb32): Likewise. + (print_insn): Initialize the insn info. + * i386-dis.c (print_insn): Initialize the insn info fields, and + detect jumps. + +2020-01-13 Claudiu Zissulescu + + * arc-opc.c (C_NE): Make it required. + +2020-01-13 Claudiu Zissulescu + + * opcode/arc-dis.c (regnames): Correct ACCL/ACCH naming, fix typo + reserved register name. + +2020-01-13 Alan Modra + + * ns32k-dis.c (Is_gen): Use strchr, add 'f'. + (print_insn_ns32k): Adjust ioffset for 'f' index_offset. + +2020-01-13 Alan Modra + + * wasm32-dis.c (print_insn_wasm32): Localise variables. Store + result of wasm_read_leb128 in a uint64_t and check that bits + are not lost when copying to other locals. Use uint32_t for + most locals. Use PRId64 when printing int64_t. + +2020-01-13 Alan Modra + + * score-dis.c: Formatting. + * score7-dis.c: Formatting. + +2020-01-13 Alan Modra + + * score-dis.c (print_insn_score48): Use unsigned variables for + unsigned values. Don't left shift negative values. + (print_insn_score32): Likewise. + * score7-dis.c (print_insn_score32, print_insn_score16): Likewise. + +2020-01-13 Alan Modra + + * tic4x-dis.c (tic4x_print_register): Remove dead code. + +2020-01-13 Alan Modra + + * fr30-ibld.c: Regenerate. + +2020-01-13 Alan Modra + + * xgate-dis.c (print_insn): Don't left shift signed value. + (ripBits): Formatting, use 1u. + +2020-01-10 Alan Modra + + * tilepro-opc.c (parse_insn_tilepro): Make opval unsigned. + * tilegx-opc.c (parse_insn_tilegx): Likewise. Delete raw_opval. + +2020-01-10 Alan Modra + + * m10300-dis.c (disassemble): Move extraction of DREG, AREG, RREG, + and XRREG value earlier to avoid a shift with negative exponent. + * m10200-dis.c (disassemble): Similarly. + +2020-01-09 Nick Clifton + + PR 25224 + * z80-dis.c (ld_ii_ii): Use correct cast. + +2020-01-03 Sergey Belyashov + + PR 25224 + * z80-dis.c (ld_ii_ii): Use character constant when checking + opcode byte value. + +2020-01-09 Jan Beulich + + * i386-dis.c (SEP_Fixup): New. + (SEP): Define. + (dis386_twobyte): Use it for sysenter/sysexit. + (enum x86_64_isa): Change amd64 enumerator to value 1. + (OP_J): Compare isa64 against intel64 instead of amd64. + * i386-opc.tbl (sysenter, sysexit): Split into AMD64 and Intel64 + forms. + * i386-tbl.h: Re-generate. + +2020-01-08 Alan Modra + + * z8k-dis.c: Include libiberty.h + (instr_data_s): Make max_fetched unsigned. + (z8k_lookup_instr): Make nibl_index and tabl_index unsigned. + Don't exceed byte_info bounds. + (output_instr): Make num_bytes unsigned. + (unpack_instr): Likewise for nibl_count and loop. + * z8kgen.c (gas ): Make noperands, length and + idx unsigned. + * z8k-opc.h: Regenerate. + +2020-01-07 Shahab Vahedi + + * arc-tbl.h (llock): Use 'LLOCK' as class. + (llockd): Likewise. + (scond): Use 'SCOND' as class. + (scondd): Likewise. + (llockd): Set data_size_mode to 'C_ZZ_D' which is 64-bit. + (scondd): Likewise. + +2020-01-06 Alan Modra + + * m32c-ibld.c: Regenerate. + +2020-01-06 Alan Modra + + PR 25344 + * z80-dis.c (suffix): Don't use a local struct buffer copy. + Peek at next byte to prevent recursion on repeated prefix bytes. + Ensure uninitialised "mybuf" is not accessed. + (print_insn_z80): Don't zero n_fetch and n_used here,.. + (print_insn_z80_buf): ..do it here instead. + +2020-01-04 Alan Modra + + * m32r-ibld.c: Regenerate. + +2020-01-04 Alan Modra + + * cr16-dis.c (cr16_match_opcode): Avoid shift left of signed value. + +2020-01-04 Alan Modra + + * crx-dis.c (match_opcode): Avoid shift left of signed value. + +2020-01-04 Alan Modra + + * d30v-dis.c (print_insn): Avoid signed overflow in left shift. + +2020-01-03 Jan Beulich + + * aarch64-tbl.h (aarch64_opcode_table): Use + SVE_ADDR_RX_LSL{1,2,3} for LD1RO{H,W,D}. + +2020-01-03 Jan Beulich + + * aarch64-tbl.h (aarch64_opcode_table): Correct SIMD + forms of SUDOT and USDOT. + +2020-01-03 Jan Beulich + + * aarch64-tbl.h (aarch64_opcode_table): Drop 'i' from + uzip{1,2}. + * aarch64-dis-2.c: Re-generate. + +2020-01-03 Jan Beulich + + * aarch64-tbl.h (aarch64_opcode_table): Correct 64-bit + FMMLA encoding. + * aarch64-dis-2.c: Re-generate. + +2020-01-02 Sergey Belyashov + + * z80-dis.c: Add support for eZ80 and Z80 instructions. + +2020-01-01 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2019 + +Copyright (C) 2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: -- 2.30.2