diff options
author | Roger Sayle <roger@eyesopen.com> | 2003-04-18 13:30:26 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2003-04-18 13:30:26 +0000 |
commit | c553b7026a36d035a298064ea62e9035ba2b3edd (patch) | |
tree | 21c51b33678116c47f2fe65f90088c9db4c844ec /gcc | |
parent | e9b841813c04b7b9ee9d2b30d8fff494ac4aacbf (diff) | |
download | gcc-c553b7026a36d035a298064ea62e9035ba2b3edd.zip gcc-c553b7026a36d035a298064ea62e9035ba2b3edd.tar.gz gcc-c553b7026a36d035a298064ea62e9035ba2b3edd.tar.bz2 |
rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT and SIGN_EXTRACT.
* rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT
and SIGN_EXTRACT.
From-SVN: r65782
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/rtlanal.c | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 68c3d86..78b0a8a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-04-18 Roger Sayle <roger@eyesopen.com> + + * rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT + and SIGN_EXTRACT. + 2003-04-18 Eric Botcazou <ebotcazou@libertysurf.fr> PR optimization/7675 diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 3b024ad..80fff63 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -1573,7 +1573,9 @@ reg_overlap_mentioned_p (x, in) unsigned int regno, endregno; /* Overly conservative. */ - if (GET_CODE (x) == STRICT_LOW_PART) + if (GET_CODE (x) == STRICT_LOW_PART + || GET_CODE (x) == ZERO_EXTRACT + || GET_CODE (x) == SIGN_EXTRACT) x = XEXP (x, 0); /* If either argument is a constant, then modifying X can not affect IN. */ |