Reducing RTL allocations
Alexandre Oliva
aoliva@redhat.com
Tue Jun 11 18:05:00 GMT 2002
On Jun 9, 2002, law@redhat.com wrote:
> In message <orbsaly8lj.fsf@free.redhat.lsd.ic.unicamp.br>, Alexandre Oliva writes:
> How could regrename safely modify any reg in-place since some of the hard
> regs is sees come from pseudos which were turned into hard regs (which are
> shared).
This is what I saw:
static void
do_replace (chain, reg)
struct du_chain *chain;
int reg;
{
while (chain)
{
unsigned int regno = ORIGINAL_REGNO (*chain->loc);
*chain->loc = gen_raw_REG (GET_MODE (*chain->loc), reg);
if (regno >= FIRST_PSEUDO_REGISTER)
ORIGINAL_REGNO (*chain->loc) = regno;
chain = chain->next_use;
}
}
I misread it as modifying the reg in place. Somehow I managed to miss
the intervening gen_raw_REG. D'oh. Sorry about the noise :-(
--
Alexandre Oliva Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist Professional serial bug killer
More information about the Gcc-patches
mailing list