需求是这样的:程序正常运行在system mode下,当出现异常后,ARM处理器将自动进入某种异常模式(比如说是Data Abort)。此时,如果想查看程序在进入异常模式之前的栈指针,即system mode下的栈指针,有办法吗?
------最佳解决方案--------------------------------------------------------
似乎没有办法在同一模式下访问各模式的同名寄存器。
可以手动修改CPRS进入对应模式(这样应该是不会触发对应的中断入理程序的),将需要的信息保存到通用的寄存器,然后再修改CPRS回到之前模式……
------其他解决方案--------------------------------------------------------
异常帧中应该包括吧?没搞过ARM架构的,你可以查一下指令手册
------其他解决方案--------------------------------------------------------
我可以幫你看
------其他解决方案--------------------------------------------------------
什么意思?
------其他解决方案--------------------------------------------------------
按你的方法试过了,可行,谢谢!
------其他解决方案--------------------------------------------------------
呵呵,就是有点麻烦……