16

是否可以强制编译器(gccclang在我的情况下)使用某个寄存器,让我们说某个变量,并禁止它R15用于除该变量之外的任何其他目的。x86_64R15

4

1 回答 1

6

gcc 可以做到。

已经引用的gcc 文档回答了您关于如何将变量强制放入某个寄存器的问题。

要阻止编译器将此寄存器用于其他目的生成代码,请使用 gcc 开关-ffixed-reg(有关详细信息,请参阅 gcc 文档)。

于 2013-07-23T13:03:56.840 回答