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

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by hongtao Liu
<liuho...@gcc.gnu.org>:

https://gcc.gnu.org/g:66b1b04bb59fbafb809bfad945c95888b758e719

commit r11-10053-g66b1b04bb59fbafb809bfad945c95888b758e719
Author: liuhongt <hongtao....@intel.com>
Date:   Mon Jun 6 13:39:19 2022 +0800

    Fix insn does not satisfy its constraints: sse2_lshrv1ti3

    21114(define_insn_and_split "ssse3_palignrdi"
    21115  [(set (match_operand:DI 0 "register_operand" "=y,x,Yv")
    21116        (unspec:DI [(match_operand:DI 1 "register_operand" "0,0,Yv")
    21117                    (match_operand:DI 2 "register_mmxmem_operand"
"ym,x,Yv")
    21118                    (match_operand:SI 3
"const_0_to_255_mul_8_operand")]
    21119                   UNSPEC_PALIGNR))]
    21120  "(TARGET_MMX || TARGET_MMX_WITH_SSE) && TARGET_SSSE3"

    Alternative 2 requires Yw instead of Yv since it's splitted to vpsrldq
    which requires AVX512VL & AVX512BW for evex version.

    gcc/ChangeLog:

            PR target/105854
            * config/i386/sse.md (ssse3_palignrdi): Change alternative 2
            from Yv to Yw.

Reply via email to