首页 > 解决方案 > 在 LDR 之后立即在 ARM 中预取中止

问题描述

我在此代码段中面临系统预取中止。我在中断服务例程中面临 2 -3 预取中止。

LDR     r1, [r5]         ; Load branch address from vector table and branch
UXTH     r0,r4               ; load vector number as argument to call
BLX     R1

在检查核心转储时,我可以看到 r5 寄存器的内容是有效的,并且 r5 寄存器指向的内存也具有有效信息,即有效信息的地址。

是否可能是保留 uxth 指令的效果。请建议

如果我们将 UXTH 保持在 LDR 以上,这个问题会得到解决吗

UXTH     r0,r4               ; load vector number as argument to call
LDR     r1, [r5]         ; Load branch address from vector table and branch

BLX     R1

标签: armabortprefetch

解决方案


推荐阅读