[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 00/14] target/arm: gdbstub cleanups and additions
From: |
Richard Henderson |
Subject: |
[PATCH v3 00/14] target/arm: gdbstub cleanups and additions |
Date: |
Mon, 27 Feb 2023 11:33:15 -1000 |
This is my pauth enhancements from last year, the corresponding gdb
patches for which are nearing merge. If lore and patchew are to be
believed, I never posted this to the list, only pushed a branch so
that issue #1105 could see it.
Since the cleanups there conflict with the recent m-profile gdbstub
patch set, I set about to resolve those. In the process, I merged
the secure extension code with the sysregs, since they're simply
presenting different views of the same registers.
Changes for v3:
* Drop write paths; there's quite a lot to reorg in v7m_msr, and
it's not clear what should even happen on the exception paths.
Changes for v2:
* Incorporate feedback for pauth.
* Rewrite m-profile systemreg and secext xml.
- Since these are Known to gdb, do not merge the two xml.
- Upstream gdb only knows about {M,P}SP, but David's extension
to include the other registers makes sense and Luis confirms
that it's ok to have extra registers in the two features.
- Continue to share code between the two xml, but separate
out the mapping from gdbstub regno to internal enumeration.
r~
David Reiss (2):
target/arm: Export arm_v7m_mrs_control
target/arm: Export arm_v7m_get_sp_ptr
Richard Henderson (12):
target/arm: Normalize aarch64 gdbstub get/set function names
target/arm: Unexport arm_gen_dynamic_sysreg_xml
target/arm: Move arm_gen_dynamic_svereg_xml to gdbstub64.c
target/arm: Split out output_vector_union_type
target/arm: Simplify register counting in arm_gen_dynamic_svereg_xml
target/arm: Hoist pred_width in arm_gen_dynamic_svereg_xml
target/arm: Fix svep width in arm_gen_dynamic_svereg_xml
target/arm: Add name argument to output_vector_union_type
target/arm: Simplify iteration over bit widths
target/arm: Create pauth_ptr_mask
target/arm: Implement gdbstub pauth extension
target/arm: Implement gdbstub m-profile systemreg and secext
configs/targets/aarch64-linux-user.mak | 2 +-
configs/targets/aarch64-softmmu.mak | 2 +-
configs/targets/aarch64_be-linux-user.mak | 2 +-
target/arm/cpu.h | 9 +-
target/arm/internals.h | 34 ++-
target/arm/gdbstub.c | 278 +++++++++++++---------
target/arm/gdbstub64.c | 175 +++++++++++++-
target/arm/tcg/m_helper.c | 90 ++++---
target/arm/tcg/pauth_helper.c | 26 +-
gdb-xml/aarch64-pauth.xml | 15 ++
10 files changed, 458 insertions(+), 175 deletions(-)
create mode 100644 gdb-xml/aarch64-pauth.xml
--
2.34.1
- [PATCH v3 00/14] target/arm: gdbstub cleanups and additions,
Richard Henderson <=
- [PATCH v3 01/14] target/arm: Normalize aarch64 gdbstub get/set function names, Richard Henderson, 2023/02/27
- [PATCH v3 02/14] target/arm: Unexport arm_gen_dynamic_sysreg_xml, Richard Henderson, 2023/02/27
- [PATCH v3 03/14] target/arm: Move arm_gen_dynamic_svereg_xml to gdbstub64.c, Richard Henderson, 2023/02/27
- [PATCH v3 04/14] target/arm: Split out output_vector_union_type, Richard Henderson, 2023/02/27
- [PATCH v3 05/14] target/arm: Simplify register counting in arm_gen_dynamic_svereg_xml, Richard Henderson, 2023/02/27
- [PATCH v3 06/14] target/arm: Hoist pred_width in arm_gen_dynamic_svereg_xml, Richard Henderson, 2023/02/27
- [PATCH v3 07/14] target/arm: Fix svep width in arm_gen_dynamic_svereg_xml, Richard Henderson, 2023/02/27
- [PATCH v3 08/14] target/arm: Add name argument to output_vector_union_type, Richard Henderson, 2023/02/27
- [PATCH v3 09/14] target/arm: Simplify iteration over bit widths, Richard Henderson, 2023/02/27
- [PATCH v3 10/14] target/arm: Create pauth_ptr_mask, Richard Henderson, 2023/02/27