https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112435

--- Comment #15 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:6043bfbd89b335dd10f093a653ee58c5b1e08ed3

commit r14-5430-g6043bfbd89b335dd10f093a653ee58c5b1e08ed3
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Tue Nov 14 08:11:44 2023 +0100

    i386: Don't optimize vshuf{i,f}{32x4,64x2} and vperm{i,f}128 to vblendps
for %ymm16+ [PR112435]

    The vblendps instruction is only VEX encoded, not EVEX, so can't be used if
    there are %ymm16+ or EGPR registers involved.

    2023-11-14  Jakub Jelinek  <ja...@redhat.com>
                Hu, Lin1  <lin1...@intel.com>

            PR target/112435
            * config/i386/sse.md (avx512vl_shuf_<shuffletype>32x4_1<mask_name>,
            <mask_codefor>avx512dq_shuf_<shuffletype>64x2_1<mask_name>): Add
            alternative with just x instead of v constraints and xjm instead of
            vm and use vblendps as optimization only with that alternative.

            * gcc.target/i386/avx512vl-pr112435-1.c: New test.
            * gcc.target/i386/avx512vl-pr112435-2.c: New test.
            * gcc.target/i386/avx512vl-pr112435-3.c: New test.

Reply via email to