Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
谁能解释一下这段代码对ARM的含义是什么?
__asm__ __volatile__("mov %0, pc \n":"=r"(val)::"memory")
我认为它将程序计数器的值存储在变量val中。我对么?
没错,就是把程序计数器放到val.
val
这=r意味着它是一个输出只写变量。"memory"告诉编译器不要在内联程序集中缓存值。我不是 100% 确定为什么"memory"在这里使用。
=r
"memory"