This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
3.3.1 patch for PR 11054
- From: Jim Wilson <wilson at tuliptree dot org>
- To: gcc-patches at gcc dot gnu dot org
- Date: 26 Jun 2003 18:00:23 -0700
- Subject: 3.3.1 patch for PR 11054
This was already fixed by a patch on the mainline. I've added the patch
to the 3.3.1 tree.
This was tested by Matthias Klose with a m68k-linux bootstrap and
i386-linux bootstrap and testsuite run.
2003-04-18 Roger Sayle <roger@eyesopen.com>
PR optimization/11054
* rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT
and SIGN_EXTRACT.
Index: rtlanal.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/rtlanal.c,v
retrieving revision 1.140.4.4
diff -p -r1.140.4.4 rtlanal.c
*** rtlanal.c 25 Apr 2003 13:45:40 -0000 1.140.4.4
--- rtlanal.c 26 Jun 2003 03:02:24 -0000
*************** reg_overlap_mentioned_p (x, in)
*** 1481,1487 ****
unsigned int regno, endregno;
/* Overly conservative. */
! if (GET_CODE (x) == STRICT_LOW_PART)
x = XEXP (x, 0);
/* If either argument is a constant, then modifying X can not affect IN. */
--- 1481,1489 ----
unsigned int regno, endregno;
/* Overly conservative. */
! 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. */