aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRoger Sayle <roger@eyesopen.com>2003-04-18 13:30:26 +0000
committerRoger Sayle <sayle@gcc.gnu.org>2003-04-18 13:30:26 +0000
commitc553b7026a36d035a298064ea62e9035ba2b3edd (patch)
tree21c51b33678116c47f2fe65f90088c9db4c844ec /gcc
parente9b841813c04b7b9ee9d2b30d8fff494ac4aacbf (diff)
downloadgcc-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/ChangeLog5
-rw-r--r--gcc/rtlanal.c4
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. */