[PATCH][x86] Match movss and movsd "blend" instructions
Jakub Jelinek
jakub@redhat.com
Sat Aug 11 09:18:00 GMT 2018
On Sat, Aug 11, 2018 at 10:59:26AM +0200, Allan Sandfeld Jensen wrote:
> +/* A subroutine of ix86_expand_vec_perm_builtin_1. Try to implement D
> + using movss or movsd. */
> +static bool
> +expand_vec_perm_movs (struct expand_vec_perm_d *d)
> +{
> + machine_mode vmode = d->vmode;
> + unsigned i, nelt = d->nelt;
> + rtx x;
> +
> + if (d->one_operand_p)
> + return false;
> +
> + if (TARGET_SSE2 && (vmode == V2DFmode || vmode == V4SFmode))
> + ;
> + else
> + return false;
> +
> + /* Only the first element is changed. */
Two spaces after .
> + if (d->perm[0] != nelt && d->perm[0] != 0)
> + return false;
> + for (i = 1; i < nelt; ++i) {
> + {
> + if (d->perm[i] != i + nelt - d->perm[0])
> + return false;
> + }
> + }
Extraneous {}s (both pairs, the outer ones even badly indented).
Otherwise LGTM.
Jakub
More information about the Gcc-patches
mailing list