描述
虽然可以正确地实现所有与调试相关的功能的可见性,但ISB指令不足以使跟踪流可以看到身份验证状态寄存器更改。
因此,即使执行ISB,跟踪也会以当前路点停止,直至下一个异常条目或返回,或者到下一个串行分支。
要解决此问题,必须将ISB指令替换为导致更改可见的事件之一。特别是,通过MOVS PC将ISB替换为下一条指令可以实现正确的功能。
解
影响: |
如程序所预期的那样,轻微的跟踪流可能无法启动或停止。 |
解决方法: |
通过导致更改可见的事件之一放置ISB指令。特别是,通过MOVS PC将ISB替换为下一条指令将实现正确的功能。 |
受影响的配置: |
使用ARM处理器的跟踪功能的系统。 |
受影响的器件版本: | 全部,没有计划修复。请参阅(Xilinx答复47916) Zynq-7000设计咨询主答复记录 |
根据ARM体系结构,在异常进入或返回或ISB指令之后,应使处理器看到认证状态寄存器中的任何更改。
虽然对于所有与调试相关的功能都可以正确实现,但ISB不足以使跟踪流可见更改。因此,即使执行ISB,跟踪也将以当前路点停止,直至下一个异常条目或返回,或者到下一个串行分支。
串行分支是以下之一:
设置S位的PC数据处理(例如,MOVS pc,r14)
LDM pc ^
没有回复内容