------- Comment #20 from ubizjak at gmail dot com 2008-02-07 09:01 ------- >From the logs:
tree-reassoc in failed case transforms: D.2020_7 = a[i_17]; D.2021_8 = D.2020_7 + i_17; s_9 = D.2021_8 + s_18; to: D.2020_7 = a[i_17]; D.2021_8 = s_18 + i_17; s_9 = D.2021_8 + D.2020_7; In my case, it transforms: D.2002_7 = a[i_18]; D.2003_8 = D.2002_7 + i_18; s_9 = D.2003_8 + s_17; to D.2002_7 = a[i_18]; D.2003_8 = i_18 + D.2002_7; s_9 = D.2003_8 + s_17; i_10 = i_18 + 1; What happens if you add -fno-tree-reassoc to your compile flags? In my case it still vectorizes both loops. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35085