diff options
author | Yvan Roux <yvan.roux@foss.st.com> | 2022-06-15 16:00:34 +0200 |
---|---|---|
committer | Yvan Roux <yvan.roux@foss.st.com> | 2022-06-15 16:00:34 +0200 |
commit | fe642a5b1411502000af9d169122522065dff9ca (patch) | |
tree | 997126d6c0e3c70d243a5299d45e7ce5694e2768 | |
parent | 75033d08412577fb8ffcf76971e8d0393d14a8aa (diff) | |
download | gdb-fe642a5b1411502000af9d169122522065dff9ca.zip gdb-fe642a5b1411502000af9d169122522065dff9ca.tar.gz gdb-fe642a5b1411502000af9d169122522065dff9ca.tar.bz2 |
gdb/arm: Fetch initial sp value prior to compare
For Arm Cortex-M33 with security extensions, there are 4 different
stack pointers (msp_s, msp_ns, psp_s, psp_ns). In order to
identify the active one, compare the values of the different
stacks. The value of the initial sp register needs to be fetched to
perform this comparison.
Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
Signed-off-by: Yvan Roux <yvan.roux@foss.st.com>
-rw-r--r-- | gdb/arm-tdep.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c index fe62617..7c36133 100644 --- a/gdb/arm-tdep.c +++ b/gdb/arm-tdep.c @@ -341,6 +341,7 @@ arm_cache_init (struct arm_prologue_cache *cache, struct frame_info *frame) arm_gdbarch_tdep *tdep = (arm_gdbarch_tdep *) gdbarch_tdep (gdbarch); arm_cache_init (cache, gdbarch); + cache->sp = get_frame_register_unsigned (frame, ARM_SP_REGNUM); if (tdep->have_sec_ext) { |