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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Xiong Hu Luo <luo...@gcc.gnu.org>:

https://gcc.gnu.org/g:146b83e14a0a76a9ce8a4cb79997a078f437f779

commit r12-4781-g146b83e14a0a76a9ce8a4cb79997a078f437f779
Author: Xionghu Luo <luo...@linux.ibm.com>
Date:   Thu Oct 28 21:28:43 2021 -0500

    rs6000: Optimize __builtin_shuffle when it's used to zero the upper bits
[PR102868]

    If the second operand of __builtin_shuffle is const vector 0, and with
    specific mask, it can be optimized to vspltisw+xxpermdi instead of lxv.

    gcc/ChangeLog:

            PR target/102868
            * config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Add
            patterns match and emit for VSX xxpermdi.

    gcc/testsuite/ChangeLog:

            PR target/102868
            * gcc.target/powerpc/pr102868.c: New test.

Reply via email to