This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/47298] -O3 destroys beautifully vectorized code obtained at -O2
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 05 Jul 2012 08:38:05 +0000
- Subject: [Bug middle-end/47298] -O3 destroys beautifully vectorized code obtained at -O2
- Auto-submitted: auto-generated
- References: <bug-47298-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47298
--- Comment #7 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-07-05 08:38:05 UTC ---
It's a pass ordering issue, cunrolli also can tremendously help vectorization
because it enables vectorization of the loop that is then the innermost loop
after unrolling. It also helps exposing redunancies as you can trivially
see in SPEC CPU 2006 calculix (gfortran.dg/reassoc_4.f).