1

我了解 64 位 Linux 允许通过寄存器传递前六个整数函数参数和前八个浮点函数参数。

如果我有七个整数参数要传递,有什么方法可以让我在不牺牲性能的情况下将未使用的浮点寄存器之一用于第七个整数?

4

1 回答 1

2

如果您正在编写自己的汇编代码,则可以以任何您想要的方式使用寄存器(好吧,也许不是那么自由,但您可以自由地忽略 ABI,排序)。但是,如果您正在与按照标准 ABI 编写的库代码(或系统调用,或从更高级别语言编译的程序的一部分,或...)进行交互,您将必须遵循形成/使用符合 ABI 的接口的代码部分。

于 2013-03-20T15:08:05.110 回答