This is the mail archive of the
gcc-prs@gcc.gnu.org
mailing list for the GCC project.
Re: c/7872: [m68k]ICE on legal code, regression from 3.0 and 2.9*
- From: wilson at gcc dot gnu dot org
- To: gcc-bugs at gcc dot gnu dot org, gcc-prs at gcc dot gnu dot org, nobody at gcc dot gnu dot org, rz at linux-m68k dot org, wilson at gcc dot gnu dot org
- Date: 28 Feb 2003 04:27:21 -0000
- Subject: Re: c/7872: [m68k]ICE on legal code, regression from 3.0 and 2.9*
- Reply-to: wilson at gcc dot gnu dot org, gcc-bugs at gcc dot gnu dot org, gcc-prs at gcc dot gnu dot org, nobody at gcc dot gnu dot org, rz at linux-m68k dot org, wilson at gcc dot gnu dot org, gcc-gnats at gcc dot gnu dot org
Synopsis: [m68k]ICE on legal code, regression from 3.0 and 2.9*
Responsible-Changed-From-To: unassigned->wilson
Responsible-Changed-By: wilson
Responsible-Changed-When: Fri Feb 28 04:27:21 2003
Responsible-Changed-Why:
For state changes.
State-Changed-From-To: feedback->analyzed
State-Changed-By: wilson
State-Changed-When: Fri Feb 28 04:27:21 2003
State-Changed-Why:
add_equal_note has
&& (GET_CODE (SET_DEST (set)) != STRICT_LOW_PART
|| ! rtx_equal_p (SUBREG_REG (XEXP (SET_DEST (set), 0)),
which is obviously wrong, since it is trying to go two levels into the RTL, but there is only one level. This has apparently been broken ever since the code was originally written in 1991. It is broken in gcc-2.0, and the first ChangeLog entry before that is the one that adds the function. I have a trivial patch for it which I am about to test.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7872