Next: , Previous: Multi-Alternative, Up: Constraints


16.8.3 寄存器类别优先选择

操作数约束还具有另一个功能:它们使编译器可以决定为伪寄存器分配哪种硬件寄存器。 编译器检查应用到使用伪寄存器的insn的约束, 查看机器相关的指定寄存器类别的字母像‘d’和‘a’。 伪寄存器被放在获得最多“票数”的类别中。约束字母‘g’和‘r’也要投票: 它们在通用寄存器方面进行投票。机器描述告诉哪种寄存器被认为是通用的。

当然,在一些机器上所有寄存器都是等价的,并且没有定义寄存器类别。 那么就相应的没有这么复杂了。