X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2FChangeLog;h=9d155b8f5e57adfe90cea1045b5b8733375f68ae;hb=1e735120b95236b1f0fd8c383e64b02b64909d7c;hp=37dc83da67f8d9f90e9e4f94030f3cfa3aa1caa3;hpb=c193949e75809a656b99c8408e5b29504aec436a;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 37dc83da67..9d155b8f5e 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,114 @@ +2021-03-24 Luis Machado + + * linux-tdep.c (struct smaps_vmflags) : New flag + bit. + (struct smaps_data): New struct. + (decode_vmflags): Handle the 'mt' flag. + (parse_smaps_data): New function, refactored from + linux_find_memory_regions_full. + (linux_address_in_memtag_page): New function. + (linux_find_memory_regions_full): Refactor into parse_smaps_data. + * linux-tdep.h (linux_address_in_memtag_page): New prototype. + +2021-03-24 Luis Machado + + * linux-tdep.c (linux_find_memory_regions_full): Use std::string + instead of char arrays. + +2021-03-24 Luis Machado + + * Makefile.in (ALL_64_TARGET_OBS): Add arch/aarch64-mte-linux.o. + (HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h and + nat/aarch64-mte-linux-ptrace.h. + * aarch64-linux-nat.c: Include nat/aarch64-mte-linux-ptrace.h. + (aarch64_linux_nat_target) : New method + override. + : New method override. + : New method override. + (aarch64_linux_nat_target::supports_memory_tagging): New method. + (aarch64_linux_nat_target::fetch_memtags): New method. + (aarch64_linux_nat_target::store_memtags): New method. + * arch/aarch64-mte-linux.c: New file. + * arch/aarch64-mte-linux.h: Include gdbsupport/common-defs.h. + (AARCH64_MTE_GRANULE_SIZE): Define. + (aarch64_memtag_type): New enum. + (aarch64_mte_get_tag_granules): New prototype. + * configure.nat (NATDEPFILES): Add nat/aarch64-mte-linux-ptrace.o. + * configure.tgt (aarch64*-*-linux*): Add arch/aarch64-mte-linux.o. + * nat/aarch64-mte-linux-ptrace.c: New file. + * nat/aarch64-mte-linux-ptrace.h: New file. + +2021-03-24 Luis Machado + + * Makefile.in (HFILES_NO_SRCDIR): Add nat/aarch64-mte-linux-ptrace.h. + * nat/aarch64-mte-linux-ptrace.h: New file. + +2021-03-24 Luis Machado + + * aarch64-linux-nat.c (fetch_mteregs_from_thread): New function. + (store_mteregs_to_thread): New function. + (aarch64_linux_nat_target::fetch_registers): Update to call + fetch_mteregs_from_thread. + (aarch64_linux_nat_target::store_registers): Update to call + store_mteregs_to_thread. + * aarch64-tdep.c (aarch64_mte_register_names): New struct. + (aarch64_cannot_store_register): Handle MTE registers. + (aarch64_gdbarch_init): Initialize and setup MTE registers. + * aarch64-tdep.h (gdbarch_tdep) : New field. + : New method. + * arch/aarch64-linux.h (AARCH64_LINUX_SIZEOF_MTE): Define. + +2021-03-24 Luis Machado + + * 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 + + * 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 + + * remote: Include gdbsupport/selftest.h. + (test_memory_tagging_functions): New function. + (_initialize_remote): Register test_memory_tagging_functions. + +2021-03-24 Luis Machado + + * 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 * arch-utils.c (default_memtag_to_string, default_tagged_address_p)