2
我想在我的断言函数中打印$ra
(返回地址)寄存器以用于调试目的。我正在研究MIPS CPU。 我试着下面的代码,但编译器不喜欢它:使用asm指令读取MIPS CPU寄存器
unsigned int RA;
unsigned int* pRA = &RA;
asm volatile("sw $ra, %0" : "=r" (pRA));
或
static volatile unsigned int RA;
asm ("mov $ra, %0" : "=m"(RA));
我发现对于内嵌/扩展组件的GCC文档,但似乎我不清楚。
这可能值得链接到[内联asm官方gcc文档](https://gcc.gnu.org/onlinedocs/gcc/Using-Assembly-Language-with-C.html)。该菜单包含约束链接以及gcc扩展asm支持的详细信息。我知道OP说他已经“找到了GCC文档”,但不清楚他发现了什么或他在哪里找到了它。 –