[PATCH 1/2, x86] Add palignr support for AVX2.

Uros Bizjak ubizjak@gmail.com
Wed Oct 1 11:46:00 GMT 2014


On Wed, Oct 1, 2014 at 1:38 PM, Jakub Jelinek <jakub@redhat.com> wrote:

>> That doesn't compile, will post a new version; got interrupted when
>> I found that in
>> GCC_TEST_RUN_EXPENSIVE=1 make check-gcc RUNTESTFLAGS='--target_board=unix/-mavx2 dg-torture.exp=vshuf*.c'
>> one test is miscompiled even with unpatched compiler, debugging that now.
>
> Let's start with the bugfix.  The || doesn't make any sense, and we really
> want to fill in 4 bits (0, 1, 4, 5) of the immediate, not just two, anyway.
> valid_perm_using_mode_p (V2TImode, d) should already guarantee that
> it is possible to permutate it as V2TI, so all we care about are the
> values of d->perm[0] and d->perm[nelt / 2], but we care not just which
> lane it is, but also which operand (src1 or src2).
>
> Tested with
> GCC_TEST_RUN_EXPENSIVE=1 make check-gcc RUNTESTFLAGS='--target_board=unix/-mavx2 dg-torture.exp=vshuf*.c'
> Ok for trunk/4.9/4.8?
>
> 2014-10-01  Jakub Jelinek  <jakub@redhat.com>
>
>         PR target/63428
>         * config/i386/i386.c (expand_vec_perm_pshufb): Fix up rperm[0]
>         argument to avx2_permv2ti.
>
>         * gcc.dg/torture/vshuf-4.inc: Move test 122 from EXPTESTS
>         to test 24 in TESTS.

OK.

Thanks,
Uros.



More information about the Gcc-patches mailing list