On Thu, Oct 11, 2012 at 4:33 PM, Jakub Jelinek <ja...@redhat.com> wrote: > On Thu, Oct 11, 2012 at 04:30:42PM +0200, Richard Biener wrote: >> > 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"?) > > That was my choice of arbitrary. Guess what the hw insns leave in there is > pretty much random, could be copies of the result in all elements, or > temporaries from pairwise reductions, etc.
Ok - in other places we try to match HW behavior during constant folding (famous SHIFT_COUNT_TRUNCATED handling ...), but I suppose it's not even documented. Richard. > Jakub