On 7/11/19 2:06 AM, Richard Sandiford wrote:
> This patch uses the constant vector encoding scheme to handle
> more cases of a VEC_DUPLICATE of another vector. Duplicating
> any fixed-length vector is fine, and duplicating a variable-length
> vector is OK as long as that vector is also a duplicate of a
> fixed-length sequence.
>
> Other cases fell through to:
>
> if (VECTOR_MODE_P (mode) && GET_CODE (op) == CONST_VECTOR)
>
> which was only expecting to deal with elementwise operations.
>
> Tested on aarch64-linux-gnu, aarch64_be-elf and x86_64-linux-gnu.
> OK to install?
>
> Richard
>
>
> 2019-07-11 Richard Sandiford <richard.sandif...@arm.com>
>
> gcc/
> * simplify-rtx.c (simplify_const_unary_operation): Fold a
> VEC_DUPLICATE of a fixed-length vector even if the result
> is variable-length. Likewise fold a duplicate of a
> variable-length vector if the variable-length vector is
> itself a duplicate of a fixed-length sequence.
> (test_vector_ops_duplicate): Test more cases.
OK
jeff