我对RISC-V ABI注册名感到困惑。例如,第85页的"RISC-V指令集手册,第一卷:用户级ISA,版本2.0“中的表18.2指定堆栈指针sp是寄存器x14。然而,指示
addi sp,zero,0由riscv64 64编译为0x00000113 --未知-精灵-as (-m32不起作用)。二进制数:
000000000000 00000 000 00010 0010011
^imm ^rs1 ^f3 ^rd ^opcode在这里,sp似乎是x2。然后我搜索了一下,找到了RISC-V Linux用户手册。本文档声明sp是x30。
那么这是什么呢?有不同的ABI吗?我可以将带有命令行选项的ABI设置为riscv64-unknown-elf-*吗?有什么地方的综合桌子吗?
https://stackoverflow.com/questions/30636566
复制相似问题