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

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

https://gcc.gnu.org/g:fca35b417c236e3448bc3666820fd1ba423fe6e9

commit r13-9139-gfca35b417c236e3448bc3666820fd1ba423fe6e9
Author: liuhongt <hongtao....@intel.com>
Date:   Wed Oct 16 13:43:48 2024 +0800

    Refine splitters related to "combine vpcmpuw + zero_extend to vpcmpuw"

    r12-6103-g1a7ce8570997eb combines vpcmpuw + zero_extend to vpcmpuw
    with the pre_reload splitter, but the splitter transforms the
    zero_extend into a subreg which make reload think the upper part is
    garbage, it's not correct.

    The patch adjusts the zero_extend define_insn_and_split to
    define_insn to keep zero_extend.

    gcc/ChangeLog:

            PR target/117159
            * config/i386/sse.md
            (*<avx512>_cmp<V48H_AVX512VL:mode>3_zero_extend<SWI248x:mode>):
            Change from define_insn_and_split to define_insn.
            (*<avx512>_cmp<VI12_AVX512VL:mode>3_zero_extend<SWI248x:mode>):
            Ditto.
            (*<avx512>_ucmp<VI12_AVX512VL:mode>3_zero_extend<SWI248x:mode>):
            Ditto.
            (*<avx512>_ucmp<VI48_AVX512VL:mode>3_zero_extend<SWI248x:mode>):
            Ditto.
            (*<avx512>_cmp<V48H_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2):
            Split to the zero_extend pattern.
            (*<avx512>_cmp<VI12_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2):
            Ditto.
            (*<avx512>_ucmp<VI12_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2):
            Ditto.
            (*<avx512>_ucmp<VI48_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2):
            Ditto.

    gcc/testsuite/ChangeLog:

            * gcc.target/i386/pr117159.c: New test.
            * gcc.target/i386/avx512bw-pr103750-1.c: Remove xfail.
            * gcc.target/i386/avx512bw-pr103750-2.c: Remove xfail.

    (cherry picked from commit 5259d3927c1c8e3a15b4b844adef59b48c241233)

Reply via email to