diff options
author | Richard Henderson <rth@redhat.com> | 2003-01-07 12:59:42 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2003-01-07 12:59:42 -0800 |
commit | 1afdf91c834722965854f32ca0f53d1694bf681b (patch) | |
tree | fb5308a92bae6e9a85b381d61fabd752851e1467 | |
parent | d02c69bed70139fc64568a118ae5aaa89458b95b (diff) | |
download | gcc-1afdf91c834722965854f32ca0f53d1694bf681b.zip gcc-1afdf91c834722965854f32ca0f53d1694bf681b.tar.gz gcc-1afdf91c834722965854f32ca0f53d1694bf681b.tar.bz2 |
alias.c (find_base_value): Only use new_reg_base_value shortcut if the register is set once.
* alias.c (find_base_value): Only use new_reg_base_value shortcut
if the register is set once.
From-SVN: r61017
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/alias.c | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6114e53..98f174d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-01-07 Richard Henderson <rth@redhat.com> + + * alias.c (find_base_value): Only use new_reg_base_value shortcut + if the register is set once. + 2003-01-07 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de> * config/i386/i386.c (ix86_init_mmx_sse_builtins): diff --git a/gcc/alias.c b/gcc/alias.c index fee64b1..960475be 100644 --- a/gcc/alias.c +++ b/gcc/alias.c @@ -1,5 +1,6 @@ /* Alias analysis for GNU C - Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 + Free Software Foundation, Inc. Contributed by John Carr (jfc@mit.edu). This file is part of GCC. @@ -787,7 +788,8 @@ find_base_value (src) { /* If we're inside init_alias_analysis, use new_reg_base_value to reduce the number of relaxation iterations. */ - if (new_reg_base_value && new_reg_base_value[regno]) + if (new_reg_base_value && new_reg_base_value[regno] + && REG_N_SETS (regno) == 1) return new_reg_base_value[regno]; if (reg_base_value[regno]) |