]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/ChangeLog
AArch64: Add target description/feature for MTE registers
[thirdparty/binutils-gdb.git] / gdb / ChangeLog
index 3abf801bea038188880f552401b28f666de7a43a..33a58cb06d9e400805b66579afeddaa0bc2b39ea 100644 (file)
@@ -1,3 +1,199 @@
+2021-03-24  Luis Machado  <luis.machado@linaro.org>
+
+       * aarch64-linux-nat.c
+       (aarch64_linux_nat_target::read_description): Take MTE flag into
+       account.
+       Slight refactor to hwcap flag checking.
+       * aarch64-linux-tdep.c
+       (aarch64_linux_core_read_description): Likewise.
+       * aarch64-tdep.c (tdesc_aarch64_list): Add one more dimension for
+       MTE.
+       (aarch64_read_description): Add mte_p parameter and update to use it.
+       Update the documentation.
+       (aarch64_gdbarch_init): Update call to aarch64_read_description.
+       * aarch64-tdep.h (aarch64_read_description): Add mte_p parameter.
+       * arch/aarch64.c: Include ../features/aarch64-mte.c.
+       (aarch64_create_target_description): Add mte_p parameter and update
+       the code to use it.
+       * arch/aarch64.h (aarch64_create_target_description): Add mte_p
+       parameter.
+       * features/Makefile (FEATURE_XMLFILES): Add aarch64-mte.xml.
+       * features/aarch64-mte.c: New file, generated.
+       * features/aarch64-mte.xml: New file.
+
+2021-03-24  Luis Machado  <luis.machado@linaro.org>
+
+       * Makefile.in (HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h.
+       * aarch64-linux-nat.c: Include arch/aarch64-mte-linux.h.
+       * aarch64-linux-tdep.c: Likewise
+       * arch/aarch64-mte-linux.h: New file.
+
+2021-03-24  Luis Machado  <luis.machado@linaro.org>
+
+       * remote: Include gdbsupport/selftest.h.
+       (test_memory_tagging_functions): New function.
+       (_initialize_remote): Register test_memory_tagging_functions.
+
+2021-03-24  Luis Machado  <luis.machado@linaro.org>
+
+       * remote.c (PACKET_memory_tagging_feature): New enum.
+       (remote_memory_tagging_p): New function.
+       (remote_protocol_features): New "memory-tagging" entry.
+       (remote_target::remote_query_supported): Handle memory tagging
+       support.
+       (remote_target::supports_memory_tagging): Implement.
+       (create_fetch_memtags_request, parse_fetch_memtags_reply)
+       (create_store_memtags_request): New functions.
+       (remote_target::fetch_memtags): Implement.
+       (remote_target::store_memtags): Implement.
+       (_initialize_remote): Add new "memory-tagging-feature"
+       config command.
+
+2021-03-24  Luis Machado  <luis.machado@linaro.org>
+
+       * arch-utils.c (default_memtag_to_string, default_tagged_address_p)
+       (default_memtag_matches_p, default_set_memtags)
+       (default_get_memtag): New functions.
+       * arch-utils.h (default_memtag_to_string, default_tagged_address_p)
+       (default_memtag_matches_p, default_set_memtags)
+       (default_get_memtag): New prototypes.
+       * gdbarch.c: Regenerate.
+       * gdbarch.h: Regenerate.
+       * gdbarch.sh (memtag_to_string, tagged_address_p, memtag_matches_p)
+       (set_memtags, get_memtag, memtag_granule_size): New gdbarch hooks.
+       (enum memtag_type): New enum.
+
+2021-03-24  Luis Machado  <luis.machado@linaro.org>
+
+       * remote.c (remote_target) <supports_memory_tagging>: New method
+       override.
+       <fetch_memtags>: New method override.
+       <store_memtags>: New method override.
+       (remote_target::supports_memory_tagging): New method.
+       (remote_target::fetch_memtags): New method.
+       (remote_target::store_memtags): New method.
+       * target-delegates.c: Regenerate.
+       * target.h (struct target_ops) <supports_memory_tagging>: New virtual
+       method.
+       <fetch_memtags>: New virtual method.
+       <store_memtags>: New virtual method.
+       (target_supports_memory_tagging): Define.
+       (target_fetch_memtags): Define.
+       (target_store_memtags): Define.
+       * target-debug.h (target_debug_print_size_t)
+       (target_debug_print_const_gdb_byte_vector_r)
+       (target_debug_print_gdb_byte_vector_r): New functions.
+
+2021-03-23  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * target.h (target_longname): Remove.
+
+2021-03-23  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * target.h (target_is_pushed): Remove, update callers to use
+       inferior::target_is_pushed instead.
+       * target.c (target_is_pushed): Remove.
+
+2021-03-23  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * target.h (push_target): Remove, update callers to use
+       inferior::push_target.
+       * target.c (push_target): Remove.
+       * inferior.h (class inferior) <push_target>: New overload.
+
+2021-03-23  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * target.h (unpush_target): Remove, update all callers
+       to use `inferior::unpush_target` instead.
+       (struct target_unpusher) <operator()>: Just declare.
+       * target.c (unpush_target): Remove.
+       (target_unpusher::operator()): New.
+
+2021-03-22  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * dwarf2/read.c (process_psymtab_comp_unit): Replace abort with an
+       error.
+       (process_full_comp_unit): Validate the top-level tag before
+       processing the first DIE.
+       (read_func_scope): Ensure we have a valid builder.
+
+2021-03-22  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * objc-lang.c (objc_demangle): Renamed to
+       objc_language::demangle_symbol, and moved later in the file.
+       (objc_language::sniff_from_mangled_name): Call demangle_symbol
+       member function.
+       (objc_language::demangle_symbol): Defined outside of class
+       declaration.  The definition is the old objc_demangle with NULL
+       changed to nullptr, and if conditions relating to nullptr pointers
+       or null character checks made explicit.
+       * objc-lang.h (objc_demangle): Delete declaration.
+
+2021-03-22  Martin Liska  <mliska@suse.cz>
+
+       * arm-tdep.c (show_disassembly_style_sfunc): Replace usage of CONST_STRNEQ with startswith.
+       (_initialize_arm_tdep): Likewise.
+
+2021-03-20  Tom Tromey  <tom@tromey.com>
+
+       * xcoffread.c (xcoff_initial_scan): Create partial symtabs.
+       * symfile.c (syms_from_objfile_1, reread_symbols): Update.
+       * psymtab.h (make_psymbol_functions): Don't declare.
+       * psymtab.c (make_psymbol_functions): Remove.
+       (maintenance_print_psymbols): Update.
+       * psympriv.h (struct psymbol_functions): Add no-argument
+       constructor.
+       * objfiles.h (struct objfile) <reset_psymtabs>: Remove.
+       <partial_symtabs>: Remove.
+       * mdebugread.c (mdebug_build_psymtabs): Create partial symtabs.
+       * elfread.c (read_partial_symbols): Update.
+       (elf_symfile_read): Remove check for existing partial symbols.
+       Don't clear "qf".
+       * dwarf2/read.c (dwarf2_has_info): Remove check for existing
+       partial symbols.
+       (dwarf2_build_psymtabs): Add psymbol_functions parameter.  Create
+       partial symtabs.
+       * dwarf2/public.h (dwarf2_build_psymtabs): Add psymbol_functions
+       parameter.
+       * dbxread.c (dbx_symfile_read): Create partial symtabs.
+       * ctfread.c (elfctf_build_psymtabs): Create partial symtabs.
+
+2021-03-20  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/read.c (dwarf2_build_psymtabs): Update.
+       * symfile.c (syms_from_objfile_1, reread_symbols): Update.
+       * symfile-debug.c (objfile::has_partial_symbols)
+       (objfile::find_last_source_symtab)
+       (objfile::forget_cached_source_info)
+       (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
+       (objfile::print_stats, objfile::dump)
+       (objfile::expand_symtabs_for_function)
+       (objfile::expand_all_symtabs)
+       (objfile::expand_symtabs_with_fullname)
+       (objfile::map_matching_symbols)
+       (objfile::expand_symtabs_matching)
+       (objfile::find_pc_sect_compunit_symtab)
+       (objfile::map_symbol_filenames)
+       (objfile::find_compunit_symtab_by_address)
+       (objfile::lookup_global_symbol_language)
+       (objfile::require_partial_symbols): Update.
+       * psymtab.c (maintenance_print_psymbols)
+       (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
+       * objfiles.h (struct objfile) <qf>: Now a forward_list.
+       * objfiles.c (objfile_relocate1): Update.
+       * elfread.c (elf_symfile_read): Update.
+
+2021-03-20  Tom Tromey  <tom@tromey.com>
+
+       * objfiles.h (struct objfile) <psymtabs>: Remove method.
+
+2021-03-20  Tom Tromey  <tom@tromey.com>
+
+       * psymtab.c (psymbol_functions::count_psyms): Rename.
+       (psymbol_functions::print_stats): Update.
+       * psympriv.h (struct psymbol_functions) <count_psyms>: Declare
+       method.
+
 2021-03-20  Tom Tromey  <tom@tromey.com>
 
        * psymtab.c (psymbol_functions::require_partial_symbols): Rename.