[PATCH] i386: Optimize vpblendvb on inverted mask register to vpblendvb on swapping the order of operand 1 and operand 2. [PR target/99908]
Hongtao Liu
crazylht@gmail.com
Wed May 12 11:46:39 GMT 2021
On Wed, May 12, 2021 at 4:36 PM Uros Bizjak <ubizjak@gmail.com> wrote:
>
> On Tue, Apr 27, 2021 at 1:05 PM Hongtao Liu via Gcc-patches
> <gcc-patches@gcc.gnu.org> wrote:
> >
> > Hi:
> > As described in the subject line, this patch is about to do the
> > below transformation.
> >
> > - vpcmpeqd %ymm3, %ymm3, %ymm3
> > - vpandn %ymm3, %ymm2, %ymm2
> > - vpblendvb %ymm2, %ymm1, %ymm0, %ymm0
> > + vpblendvb %ymm2, %ymm0, %ymm1, %ymm0
> >
> > Bootstrapped and regtested on x86-64_iinux-gnu{-m32,}.
> >
> > gcc/ChangeLog:
> >
> > PR target/99908
> > * config/i386/sse.md (<sse4_1_avx2>_pblendvb): Add
> > splitters for pblendvb of NOT mask register.
> >
> > gcc/testsuite/ChangeLog:
> >
> > PR target/99908
> > * gcc.target/i386/avx2-pr99908.c: New test.
> > * gcc.target/i386/sse4_1-pr99908.c: New test.
>
> OK.
>
> Thanks,
> Uros.
Thanks for the review.
--
BR,
Hongtao
More information about the Gcc-patches
mailing list