(insert_regs): If a REG already is in a class but not in the mode we
want, don't do anything to the classes. From-SVN: r3951
This commit is contained in:
parent
e6878cb948
commit
1ff0c00d9f
11
gcc/cse.c
11
gcc/cse.c
|
@ -984,9 +984,14 @@ insert_regs (x, classp, modified)
|
|||
{
|
||||
register int regno = REGNO (x);
|
||||
|
||||
if (modified
|
||||
|| ! (REGNO_QTY_VALID_P (regno)
|
||||
&& qty_mode[reg_qty[regno]] == GET_MODE (x)))
|
||||
/* If REGNO is in the equivalence table already but is of the
|
||||
wrong mode for that equivalence, don't do anything here. */
|
||||
|
||||
if (REGNO_QTY_VALID_P (regno)
|
||||
&& qty_mode[reg_qty[regno]] != GET_MODE (x))
|
||||
return 0;
|
||||
|
||||
if (modified || ! REGNO_QTY_VALID_P (regno))
|
||||
{
|
||||
if (classp)
|
||||
for (classp = classp->first_same_value;
|
||||
|
|
Loading…
Reference in New Issue