ARMv8-M: Implement stack limit checking for Secure/Non-secure stack pointers #6373
ARMv8-M implementations may have stack limit registers to allow stack protection, which is valuable, particularly, when the processor implementation includes the optional ARM Security Extension.
Stack limit checking is enforced during the creation of a stack frame. It prevents stack pointer to decent below values that, possibly, cross security boundaries (i.e. secure and non-secure memory regions).
This task concerns the integration of ARM stack limit checking in the ARM core.
Stack Pointer (SP)-limit-based protection could replace the MPU-based stack guards on ARMv8-M CPU with native SP limit checks:
In addition to that:
At initialization, upon configuring the