diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 25bf3ba5d56..e2178788ca7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2001-09-11 Jim Wilson + + * alias.c (clear_reg_alias_info): Only handle pseudo registers. + 2001-10-11 Matt Kraai * builtins.c (c_strlen): Treat an offset too large for a diff --git a/gcc/alias.c b/gcc/alias.c index 5da7740ad6c..61c1d8fa2ad 100644 --- a/gcc/alias.c +++ b/gcc/alias.c @@ -969,8 +969,10 @@ void clear_reg_alias_info (reg) rtx reg; { - if (REGNO (reg) < reg_known_value_size) - reg_known_value[REGNO (reg)] = reg; + unsigned int regno = REGNO (reg); + + if (regno < reg_known_value_size && regno >= FIRST_PSEUDO_REGISTER) + reg_known_value[regno] = reg; } /* Returns a canonical version of X, from the point of view alias