https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98461
--- Comment #12 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:bea984814c6fcd056dc80c99805925eb19a591b9 commit r11-6462-gbea984814c6fcd056dc80c99805925eb19a591b9 Author: liuhongt <hongtao....@intel.com> Date: Mon Jan 4 11:24:30 2021 +0800 i386: Optimize pmovskb on zero_extend of subreg HI of pmovskb result [PR98461] The following patch adds define_insn_and_split to optimize vpmovmskb %xmm0, %eax - movzwl %ax, %eax notl %eax and combine splitter to optimize pmovmskb %xmm0, %eax - notl %eax - movzwl %ax, %eax + xorl $65535, %eax gcc/ChangeLog PR target/98461 * config/i386/sse.md (*sse2_pmovskb_zexthisi): New define_insn_and_split for zero_extend of subreg HI of pmovskb result. (*sse2_pmovskb_zexthisi): Add new combine splitters for zero_extend of not of subreg HI of pmovskb result. gcc/testsuite/ChangeLog * gcc.target/i386/sse2-pr98461-2.c: New test.