4.4 Single Step
4.4单步
调试器可以通过在设置resumereq之前设置step
然年 停止的 hart 执行一条指令,然后重新进入调试模式。
该指令导致了一些问题
指令引起异常:如果执行或获取该指令导致异常,则在
1.PC被更改为异常处理程序
2.更新适当的tval和原因寄存器
3.不执行异常处理程序而是 立即重新进入调试模式。
指令地址引起触发器触发:如果执行或获取指令导致触发器触发,则在触发器触发后立即重新进入调试模式。
在这种情况下,cause被设置为2(触发器)而不是4(单步)。
指令是否被执行取决于触发器的特定配置。
指令是wfi指令:如果被跨越的指令是wfi,并且通常会使hart停止,那么该指令将被视为nop
指令是跳转指令:如果执行的指令导致PC改变到一个地址,在这个地址上取指令导致了异常,这个异常直到下一次hart被恢复时才会发生。
类似地,新地址上的触发器在hart实际尝试执行该指令之前不会触发。