This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/17252] [3.5 Regression] not marking char types as aliasing anything
- From: "dnovillo at redhat dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 31 Aug 2004 23:07:36 -0000
- Subject: [Bug tree-optimization/17252] [3.5 Regression] not marking char types as aliasing anything
- References: <20040831193546.17252.pinskia@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From dnovillo at redhat dot com 2004-08-31 23:07 -------
Subject: Re: [3.5 Regression] LIM can create
wrong code because of aliasing
On Tue, 2004-08-31 at 19:01, pinskia at gcc dot gnu dot org wrote:
> @@ -25,10 +10,10 @@ g ()
> char * a.0;
>
> <bb 0>:
> + a.0_4 = a;
>
> # i_15 = PHI <0(0), i_8(3)>;
> <L0>:;
> - a.0_4 = a;
> i.1_5 = (unsigned int)i_15;
> i.2_6 = (char *)i.1_5;
> T.3_7 = a.0_4 + i.2_6;
>
> Basically since *a can change a by the definition of the C aliasing rules we cannot move the load of the
> global out of the loop.
>
Well, since I can't seem to reproduce it here, I can't really help. Do
you have any local changes to LIM?
Diego.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17252