Redo gas local symbol support
[deliverable/binutils-gdb.git] / gas / ChangeLog
index f63af2efc1641f8d00424bb48c71a9b2201d4d1d..1155727c02eb0108945e04b286f6b7d3b37b994d 100644 (file)
@@ -1,3 +1,882 @@
+2020-08-21  Alan Modra  <amodra@gmail.com>
+
+       * 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  <amodra@gmail.com>
+
+       * 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  <amodra@gmail.com>
+
+       * 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  <cooper.qu@linux.alibaba.com>
+
+       * 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  <mliska@suse.cz>
+
+       * 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  <mliska@suse.cz>
+
+       * 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  <mliska@suse.cz>
+
+       * 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  <mliska@suse.cz>
+
+       * 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  <mliska@suse.cz>
+
+       * 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  <mliska@suse.cz>
+
+       * 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  <mliska@suse.cz>
+
+       * 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  <mliska@suse.cz>
+
+       * 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  <mliska@suse.cz>
+
+       * 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  <amodra@gmail.com>
+
+       * testsuite/gas/ppc/int128.s: Correct vcmpuq.
+       * testsuite/gas/ppc/int128.d: Update.
+       * testsuite/gas/ppc/xvtlsbb.d: Update.
+
+2020-08-18  Peter Bergner  <bergner@linux.ibm.com>
+
+       * testsuite/gas/ppc/vsx4.s: Update test to use new mnemonic.
+       * testsuite/gas/ppc/vsx4.d: Likewise.
+
+2020-08-17  Alex Coplan  <alex.coplan@arm.com>
+
+       * 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  <nickc@redhat.com>
+
+       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  <joe.ramsay@.arm.com>
+
+       * 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  <alex.coplan@arm.com>
+
+       * 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  <nickc@redhat.com>
+
+       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  <nickc@redhat.com>
+
+       * po/ru.po: Updated Russian translation.
+
+2020-08-10  Alex Coplan  <alex.coplan@arm.com>
+
+       * 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  <przemyslaw.wirkus@arm.com>
+
+       * 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  <amodra@gmail.com>
+
+       * 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  <amodra@gmail.com>
+
+       * testsuite/gas/ppc/power8.d: Update.
+       * testsuite/gas/ppc/vsx2.d: Update.
+
+2020-08-10  Alan Modra  <amodra@gmail.com>
+
+       * 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  <hongjiu.lu@intel.com>
+
+       * read.c (read_a_source_file): Ignore rest of line on overflow
+       error.
+
+2020-08-06  Alex Coplan  <alex.coplan@arm.com>
+
+       * 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  <chris@groessler.org>
+
+       * gas/testsuite/gas/z8k/inout.d: Adapt to correct encoding of
+       "sout/soutb #imm,reg"
+
+2020-08-04  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * NEWS: Mention {disp16} pseudo prefix.
+
+2020-08-04  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental
+       change.
+
+2020-08-04  Mark Wielaard  <mark@klomp.org>
+
+       * 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  <mark@klomp.org>
+
+       * gas/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  <mark@klomp.org>
+
+       * dwarf2dbg.c (out_debug_info): Emit unit type and abbrev offset
+       for DWARF5.
+       * gas/testsuite/gas/elf/dwarf-4-cu.d: New file.
+       * gas/testsuite/gas/elf/dwarf-4-cu.s: Likewise.
+       * gas/testsuite/gas/elf/dwarf-5-cu.d: Likewise.
+       * gas/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  <mark@klomp.org>
+
+       * doc/as.texi (--gdwarf-[345]): Fix typo.
+
+2020-08-03  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
+
+       * 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  <hongjiu.lu@intel.com>
+
+       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  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
+       * Makefile.in, doc/Makefile.in: Regenerate.
+       * configure: Regenerate.
+
+2020-07-30  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * 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  <nickc@redhat.com>
+
+       * as.c (dwarf_level): Initialise to 3 in case this is not set on
+       the command line.
+
+2020-07-29  Maciej W. Rozycki  <macro@linux-mips.org>
+
+       * 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  <macro@linux-mips.org>
+
+       * 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  <hongjiu.lu@intel.com>
+
+       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  <hongjiu.lu@intel.com>
+
+       * doc/as.texi: Replace preceeded with preceded.
+
+2020-07-22  Maciej W. Rozycki  <macro@linux-mips.org>
+
+       * 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  <macro@linux-mips.org>
+
+       * testsuite/gas/mips/mips.exp: Use a helper variable for
+       IRIX/non-IRIX test selection.
+
+2020-07-21  Jan Beulich  <jbeulich@suse.com>
+
+       * 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  <cooper.qu@linux.alibaba.com>
+
+       * config/tc-csky.c (md_begin): Fix tests of arch and mach flags.
+
+2020-07-21  Jan Beulich  <jbeulich@suse.com>
+
+       * 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  <macro@linux-mips.org>
+
+       * config/tc-mips.c (prev_reloc_op_frag): Remove variable.
+       (my_getSmallExpression): Adjust accordingly.
+
+2020-07-20  Jan Beulich  <jbeulich@suse.com>
+
+       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  <jbeulich@suse.com>
+
+       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  <jbeulich@suse.com>
 
        * config/tc-i386.c (frag_opcode_byte): New.
This page took 0.037921 seconds and 4 git commands to generate.