This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/57380] [4.7/4.8/4.9 Regression] GCC 4.9.0 will not vectorize std::max and similar functions


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57380

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
There was a deliberate change to require at least one invariant address or
a re-use of a previous load.

 2010-07-08  Richard Guenther  <rguenther@suse.de>

+       PR tree-optimization/44831
+       * tree-ssa-phiprop.c (phiprop_insert_phi): Properly build
+       a MEM_REF preserving TBAA info of the original dereference.
+       Dereference the original pointer if the address is not
+       invariant.
+       (propagate_with_phi): Fixup type checks wrt MEM_REFs.  Require
+       at least one invariant address that we are going to dereference.

I have a fix.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]