http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61000
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Mircea Namolaru from comment #2) > Again, the problem is due to representation of arrays in Fortran as array > with a single dimnesion (for similar code in C profitability check work as > expected). It is a recurring problem that may lead to compilation time > increase (sometimes dramatically) or missed opportunities optimizations due > to too conservative dependence analysis or as on this case the profitability > check failure. The solution is to de-liniarize array accesses in Fortran as > in C. Note that C doesn't always have de-linearized arrays (once you access the array via a pointer). For Fortran de-linearizing is "easy" via simple casting to a multi-dimensional (variable-bounds) array type. For the middle-end side, that is.