------- Comment #1 from dorit at gcc dot gnu dot org 2008-02-25 10:21 ------- (In reply to comment #0) > It is beneficial to unroll reduction loop (and split the reduction target) to > reduce dependence height due to recurrence, but GCC does not perform such > optimization (-O3 -fno-tree-vectorize)
it does, if you use -fvariable-expansion-in-unroller -funroll-loops (this splits the reduction target into 2 accumulators. For more agressive spiltting you can use --param max-variable-expansions-in-unrolle=[n]) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35343