[PATCH v3 0/5] arm: Add support for multiple stacks on Cortex-M

Christophe Lyon christophe.lyon@arm.com
Mon Feb 28 10:38:05 GMT 2022


On 2/27/22 12:35, Joel Brobecker via Gdb-patches wrote:
>> Will you be able to review this patch series from Christophe?
> I see that the v3 series was posted on Feb 4th, while on Feb 6th
> I reviewed v2 :-(. This is really unfortunate that we don't have
> a better system for tracking whether a version of a series is
> trully the latest version.

No problem, there's not much difference between v2 and v3,

so your comments still apply. I should have answered earlier.

>
> Can you take a look at the comments and question I asked in v2,
> and publish a v4 which takes those into account? Please Cc: me
> on the submission of the patches, this will help me remember
> to prioritize those patches.


Sure!


Luis and I changed jobs at the same time, so there's a bit

of lag :-)


Thanks,


Christophe


>
>> Thank you,
>>
>> --
>> Maxim Kuvyrkov
>> https://www.linaro.org
>>
>>> On 4 Feb 2022, at 11:41, Christophe Lyon via Gdb-patches <gdb-patches@sourceware.org> wrote:
>>>
>>> From: Christophe Lyon <christophe.lyon@foss.st.com>
>>>
>>> This patch series introduces support for the multiple stack pointers
>>> on v8-M architecture (MSP_S, MSP_NS, PSP_S, PSP_NS).
>>>
>>> This enables to unwind through Secure vs Non-secure context switches.
>>>
>>> Along the way, the first patch adds support to detect vpush
>>> instructions in function prologues, which in particular is used in the
>>> CMSE trampolines.
>>>
>>> v3 fixes two small silly mistakes in patches 4 and 5.
>>>
>>> Christophe Lyon (5):
>>>   gdb/arm: Fix prologue analysis to support vpush
>>>   gdb/arm: Define MSP and PSP registers for M-Profile
>>>   gdb/arm: Introduce arm_cache_init
>>>   gdb/arm: Add support for multiple stack pointers on Cortex-M
>>>   gdb/arm: Extend arm_m_addr_is_magic to support FNC_RETURN, add
>>>     unwind-ns-to-s command
>>>
>>> gdb/NEWS                          |   5 +
>>> gdb/arch/arm.c                    |   6 +
>>> gdb/arch/arm.h                    |   1 +
>>> gdb/arm-tdep.c                    | 698 +++++++++++++++++++++++++-----
>>> gdb/arm-tdep.h                    |  10 +
>>> gdb/doc/gdb.texinfo               |  10 +
>>> gdb/features/Makefile             |   1 +
>>> gdb/features/arm/arm-m-system.c   |  15 +
>>> gdb/features/arm/arm-m-system.xml |  12 +
>>> gdb/features/arm/arm-secext.c     |  17 +
>>> gdb/features/arm/arm-secext.xml   |  15 +
>>> 11 files changed, 691 insertions(+), 99 deletions(-)
>>> create mode 100644 gdb/features/arm/arm-m-system.c
>>> create mode 100644 gdb/features/arm/arm-m-system.xml
>>> create mode 100644 gdb/features/arm/arm-secext.c
>>> create mode 100644 gdb/features/arm/arm-secext.xml
>>>
>>> -- 
>>> 2.25.1
>>>


More information about the Gdb-patches mailing list