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.

Reply via email to