相关疑难解决方法(0)

海湾合作委员会:禁止使用某些登记册

这是一个奇怪的要求,但我觉得它有可能.我想要的是将一些编译指示或指令插入到我的代码区域(用C编写),以便GCC的寄存器分配器不会使用它们.

我知道我可以做这样的事情,这可能会为这个变量留下这个寄存器

register int var1 asm ("EBX") = 1984;
register int var2 asm ("r9") = 101;
Run Code Online (Sandbox Code Playgroud)

问题是我直接插入新指令(用于硬件模拟器),而GCC和GAS还没有识别出这些指令.我的新指令可以使用现有的通用寄存器,我想确保我保留了一些(即r12-> r15).

现在,我在一个模拟环境中工作,我想快速做我的实验.将来我会添加GAS并将内在函数添加到GCC中,但是现在我正在寻找快速修复.

谢谢!

c assembly gcc gnu-assembler register-allocation

22
推荐指数
4
解决办法
3866
查看次数

标签 统计

assembly ×1

c ×1

gcc ×1

gnu-assembler ×1

register-allocation ×1