gcc 中REG_UNUSED和REG_DEAD的区别

在函数try_auto_increment中,显然REG_UNUSED标记的寄存器实际也是DEAD, 只是在本pattern中被重新set, 因此大部分是inout属性的操作数


if (apply_change_group ())
                {
                  /* If there is a REG_DEAD note on this insn, we must
                     change this not to REG_UNUSED meaning that the register
                     is set, but the value is dead.  Failure to do so will
                     result in sched1 dying -- when it recomputes lifetime
                     information, the number of REG_DEAD notes will have
                     changed.  */



猜你喜欢

转载自blog.csdn.net/zhongyunde/article/details/79114120
gcc