【发布时间】:2021-01-05 08:23:01
【问题描述】:
正如RISC-V calling convention documentation 所说:
当在堆栈上传递两倍于指针字大小的原始参数时,它们是 自然对齐。当它们在整数寄存器中传递时,它们驻留在对齐的奇偶 寄存器对,偶数寄存器保存最低有效位。例如,在 RV32 中, 函数 void foo(int, long long) 在 a0 中传递它的第一个参数,在 a2 中传递它的第二个参数, 一个3。 a1 中没有传递任何内容。
为什么不直接使用a1 和a2 而不是a2 和a3?所以我们可以通过寄存器传递更多的参数。
【问题讨论】:
标签: assembly calling-convention riscv