我想知道如何使用iabr寄存器来设置断点。手册中提到了一些关于isync指令的内容,但这似乎不起作用。有人能帮帮忙吗?
我使用的代码如下:
asm ("isync");
asm volatile ("mtspr 1010,%0;" : : "r"(val));
asm ("isync");
asm ("isync");发布于 2012-04-24 04:18:36
MPC604给出了一个提示:
当IABR中的地址(位0至29)与完成单元中要完成的下一条指令匹配,且IABR使能位(位30)设置为1时,会发生指令地址断点异常。
如果您想要中断的指令的地址是addr,则需要执行val = addr | 2。我不知道第31位是做什么的。
https://stackoverflow.com/questions/10135239
复制相似问题