Using and Porting GNU CC
These features do not work very well. They exist because they used to be required to generate correct code for the 80387 coprocessor of the 80386. They are no longer used by that machine description and may be removed in a later version of the compiler. Don't use them!
If this macro is not defined, it means that none of the hard registers overlap each other. This is the usual situation.
INSN_CLOBBERS_REGNO_P (insn, regno)
If this macro is not defined, it means that no insn clobbers registers mysteriously. This is the usual situation; all else being equal, it is best for the RTL expression to show all the activity.
REG_DEADnotes are needed for hard register number regno at the time of outputting the assembler code. When this is so, a few optimizations that take place after register allocation and could invalidate the death notes are not done when this register is involved.
You would arrange to preserve death info for a register when some of the code in the machine description which is executed to write the assembler code looks at the death notes. This is necessary only when the actual hardware feature which GNU CC thinks of as a register is not actually a register of the usual sort. (It might, for example, be a hardware stack.)
If this macro is not defined, it means that no death notes need to be preserved. This is the usual situation.