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).