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

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

https://gcc.gnu.org/g:8bc700f4c3fbe405413db02281ef2918bfa831fc

commit r12-6756-g8bc700f4c3fbe405413db02281ef2918bfa831fc
Author: liuhongt <hongtao....@intel.com>
Date:   Mon Jan 17 10:47:46 2022 +0800

    Enhance vec_pack_trunc for integral mode mask.

    For testcase in PR, the patch supports QI:4 -> HI:16 pack with
    multi steps(first pack QI:4 -> QI:8 through vec_pack_sbool_trunc_qi,
    then pack QI:8 -> HI:16 through vec_pack_trunc_hi).
    Similar for QI:2 -> HI:16 which is test4 in mask-pack-prefer-128.c.

    gcc/ChangeLog:

            PR target/103771
            * tree-vect-stmts.cc (supportable_narrowing_operation): Enhance
            integral mode mask pack by multi steps which takes
            vec_pack_sbool_trunc_optab as start when elements number is
            less than BITS_PER_UNITS.

    gcc/testsuite/ChangeLog:

            * gcc.target/i386/mask-pack-prefer128.c: New test.
            * gcc.target/i386/mask-pack-prefer256.c: New test.
            * gcc.target/i386/pr103771.c: New test.

Reply via email to