我的问题非常类似于:GCC:禁止使用某些寄存器
但是,我想限制 C 函数中使用的寄存器数量。换句话说,我希望能够使用类似于 clobber 寄存器的指令,但应用于 C 函数级别而不是在内联汇编中。此外,每个函数可能有一组不同的寄存器可供使用,因此它不可能是一个万能的解决方案。
我想到的唯一两种可能的解决方案是:
由于我尝试用 C 语言完成所有这些工作,预编译器是否可以以任何方式提供帮助?有没有可能的方法来实现我的预期目标?
不,没有。 您将需要在函数或汇编语言中使用内联汇编语句。