From: Roger Sayle Date: Fri, 18 Apr 2003 13:30:26 +0000 (+0000) Subject: rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT and SIGN_EXTRACT. X-Git-Tag: releases/gcc-3.4.0~7191 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c553b7026a36d035a298064ea62e9035ba2b3edd;p=thirdparty%2Fgcc.git 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 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 68c3d86de6c3..78b0a8ac0456 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-04-18 Roger Sayle + + * rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT + and SIGN_EXTRACT. + 2003-04-18 Eric Botcazou PR optimization/7675 diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 3b024adc89d0..80fff6310bf3 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. */