> > This restores the vec_construct cost dependence on the vector element > count. Honza removed this (accidentially?) during the rework. > > Bootstrap / regtest running on x86_64-unknown-linux-gnu, ok for trunk?
Hmm, the false parameter to ix86_vec_cost is supposed to do that. It uses: if (!parallel) return cost * GET_MODE_NUNITS (mode); Why it doesn't work? Honza > > Thanks, > Richard. > > 2017-12-08 Richard Biener <rguent...@suse.de> > > PR target/83008 > * config/i386/i386.c (ix86_builtin_vectorization_cost): Restore > vec_construct dependence on vector element count. > > Index: gcc/config/i386/i386.c > =================================================================== > --- gcc/config/i386/i386.c (revision 255499) > +++ gcc/config/i386/i386.c (working copy) > @@ -44879,7 +44879,8 @@ ix86_builtin_vectorization_cost (enum ve > ix86_cost->sse_op, true); > > case vec_construct: > - return ix86_vec_cost (mode, ix86_cost->sse_op, false); > + return (ix86_vec_cost (mode, ix86_cost->sse_op, false) > + * (TYPE_VECTOR_SUBPARTS (vectype) - 1)); > > default: > gcc_unreachable ();