gpt4 book ai didi

assembly - AARCH64 上不存在 MCR 和 MRC?

转载 作者:行者123 更新时间:2023-12-03 15:51:20 30 4
gpt4 key购买 nike

我正在尝试基于 Board 在 AARCH64 上编译“mrc”和“mcr”指令,但我看到以下错误消息

   tmp/ccqOHmrK.s: Assembler messages:
/tmp/ccqOHmrK.s:43: Error: unknown mnemonic `mrc' -- `mrc p15,0,x0,c14,c3,1'
/tmp/ccqOHmrK.s:53: Error: unknown mnemonic `mrc' -- `mrc p15,0,x2,c14,c3,0'

我尝试查看内核源代码/arch/arm64,但没有模拟就没有使用过 mcr&&mrc。

这是一些语法问题吗?

最佳答案

您应该将这些替换为适当的 msr指示。
例如,arch/arm/include/asm/arch_timer.h已:

case ARCH_TIMER_REG_CTRL:
asm volatile("mcr p15, 0, %0, c14, c3, 1" : : "r" (val));

arch/arm64/include/asm/arch_timer.h中的对应方已:
case ARCH_TIMER_REG_CTRL:
asm volatile("msr cntv_ctl_el0, %0" : : "r" (val));

关于assembly - AARCH64 上不存在 MCR 和 MRC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32374599/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com