* regrename.c (do_replace): Copy REG_POINTER value to new reg.

From-SVN: r140616
This commit is contained in:
Steve Ellcey 2008-09-23 20:44:18 +00:00 committed by Steve Ellcey
parent 8569b2d0a9
commit b41310e29d
2 changed files with 6 additions and 0 deletions

View file

@ -1,3 +1,7 @@
2008-08-23 Steve Ellcey <sje@cup.hp.com>
* regrename.c (do_replace): Copy REG_POINTER value to new reg.
2008-09-23 Richard Sandiford <rdsandiford@googlemail.com>
* alias.c (find_base_value): Use FIND_BASE_TERM.

View file

@ -357,11 +357,13 @@ do_replace (struct du_chain *chain, int reg)
{
unsigned int regno = ORIGINAL_REGNO (*chain->loc);
struct reg_attrs * attr = REG_ATTRS (*chain->loc);
int reg_ptr = REG_POINTER (*chain->loc);
*chain->loc = gen_raw_REG (GET_MODE (*chain->loc), reg);
if (regno >= FIRST_PSEUDO_REGISTER)
ORIGINAL_REGNO (*chain->loc) = regno;
REG_ATTRS (*chain->loc) = attr;
REG_POINTER (*chain->loc) = reg_ptr;
df_insn_rescan (chain->insn);
chain = chain->next_use;
}