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? 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 ();