This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/36713] [4.4 regression] r137252 breaks -O2 optimization on x86_64-unknown-linux-gnu
- From: "rguenther at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 3 Jul 2008 10:08:39 -0000
- Subject: [Bug target/36713] [4.4 regression] r137252 breaks -O2 optimization on x86_64-unknown-linux-gnu
- References: <bug-36713-13648@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #5 from rguenther at suse dot de 2008-07-03 10:08 -------
Subject: Re: [4.4 regression] r137252 breaks -O2 optimization
on x86_64-unknown-linux-gnu
On Thu, 3 Jul 2008, franke dot daniel at gmail dot com wrote:
> ------- Comment #4 from franke dot daniel at gmail dot com 2008-07-03 09:53 -------
> Subject: Re: [4.4 regression] r137252 breaks -O2 optimization on
> x86_64-unknown-linux-gnu
>
> 3 Jul 2008 09:42:44 -0000, rguenther at suse dot de <gcc-bugzilla@gcc.gnu.org>:
>> Hm, I'm out of quick ideas ;) Polyhedron still seems to work fine
>> for me, as does SPEC 2000.
>
> Any hint of what I should look for? Some specific feature that the
> change in question might affect?
> If nothing else, I'll try to compare dumps between the two revisions.
> Is this a specific pass or will -fdump-tree-optimized do?
The patch changed us to assume that on function entry global variables
only point to global memory, not function local memory. In the end
this should result in less call-clobbering and thus "more" optimization
...
-fdump-tree-optimized differences should hint at where it goes wrong,
for further analysis I would suggest -fdump-tree-alias-vops.
To simplify your life try if you can reproduce it with -O
-fstrict-aliasing or with -O2 -fno-tree-pre.
Richard.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36713