On Thu, Oct 11, 2012 at 3:47 PM, Jakub Jelinek <ja...@redhat.com> wrote: > On Thu, Oct 11, 2012 at 03:42:44PM +0200, Richard Biener wrote: >> On Wed, Oct 10, 2012 at 7:49 PM, Jakub Jelinek <ja...@redhat.com> wrote: >> > This patch folds REDUC_*_EXPR (e.g. on pr54877.c -Ofast -mavx >> > testcase we end up with unfolded REDUC_PLUS_EXPR till *.optimized). >> > >> > Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? >> >> Eh, I didn't realize the result type is a vector ... can you adjust the docs >> in tree.def to reflect that the _result_ is a vector with the first element >> having the result and operand 0 is the vector being reduced? > > The comment wants to say that, but doesn't do it correctly: > Operand 0 is a vector; the first element in the vector has the result. > Operand 1 is a vector. */ > because obviously it doesn't have two operands, just one. So it should be > perhaps > Operand 0 is a vector. > The expression returns a vector of the same type, with the first > element in the vector holding the result of the reduction. */ > ?
Yes. It also should specify that the other elements are zero (or is that just your choice of "arbitrary"?) Richard. > Jakub