Christopher Bazley <[email protected]> writes: > It follows that, in cases like this, there can be more efficient > encodings of a VECTOR_CST than those currently created by > build_vector_from_ctor. Currently, build_vector_from_ctor always > encodes twice the minimum number of subparts of a variable-length vector > type. It seems to me that it would be sufficient to encode twice the > number of elements in the vector of CONSTRUCTOR_ELT, because > build_vector_from_ctor sets the second element of each pattern to zero > and those zeros repeat an infinite number of times. > > I don't think optimising the encoding of VECTOR_CST is necessary to > enable BB SLP with predicated tails though.
FWIW, users of tree_vector_builder aren't expected to do this kind of optimisation. Calling tree_vector_builder::build calls vector_builder::finalize, which tries to simplify the encoding. Richard
