This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/50904] [4.7 regression] pessimization when -fno-protect-parens is enabled by -Ofast
- From: "rguenther at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 05 Dec 2011 09:55:47 +0000
- Subject: [Bug rtl-optimization/50904] [4.7 regression] pessimization when -fno-protect-parens is enabled by -Ofast
- Auto-submitted: auto-generated
- References: <bug-50904-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50904
--- Comment #40 from rguenther at suse dot de <rguenther at suse dot de> 2011-12-05 09:55:47 UTC ---
On Mon, 5 Dec 2011, ebotcazou at gcc dot gnu.org wrote:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50904
>
> --- Comment #39 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-12-05 09:21:15 UTC ---
> > Thus, I think if at the RTL level we see a missed invariant motion then
> > this is a RTL level bug (esp. if it only triggers with -fno-protect-parens).
>
> Well, how can the RTL level invent load hoisting opportunities? They are of
> course already present at the Tree level, see the .optimized dump:
>
> vect_var_.124_350 = MEM[(real(kind=8)[9] *)&x2gauss];
They are considered dependent because they are still decomposed as
vect_px2gauss.123_680 = &x2gauss;
...
vect_var_.124_350 = MEM[(real(kind=8)[9] *)vect_px2gauss.123_680];
during LIM3. Let me check why we don't fix that up in LIM dependence
checking.