Question on REG_EQUAL documentation

Jie Zhang jie@codesourcery.com
Tue Jun 1 00:42:00 GMT 2010


The GCC internal document says [1]:

[quote]
In the early stages of register allocation, a REG_EQUAL note is changed 
into a REG_EQUIV note if op is a constant and the insn represents the 
only set of its destination register.

Thus, compiler passes prior to register allocation need only check for 
REG_EQUAL notes and passes subsequent to register allocation need only 
check for REG_EQUIV notes.
[/quote]

But I still find REG_EQUAL notes in RTL dumps for those passes after 
IRA. My understanding is: a REG_EQUAL note is changed into a REG_EQUIV 
note in IRA when possible, but the remaining REG_EQUAL notes are still 
kept around. So the compiler passes after register allocation need check 
for both REG_EQUIV notes and REG_EQUAL notes. Is my understanding correct?


[1] http://gcc.gnu.org/onlinedocs/gccint/Insns.html#index-REG_005fEQUIV-2258


-- 
Jie Zhang
CodeSourcery
(650) 331-3385 x735



More information about the Gcc mailing list