https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104915
--- Comment #3 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:1e69bc810272f289e367570cf89d8c72af6124e4 commit r13-284-g1e69bc810272f289e367570cf89d8c72af6124e4 Author: liuhongt <hongtao....@intel.com> Date: Tue Mar 29 09:21:21 2022 +0800 Optimize movzwl + vmovd/vmovq to vmovw. Similarly optimize movl + vmovq to vmovd. gcc/ChangeLog: PR target/104915 * config/i386/sse.md (*vec_set<mode>_0_zero_extendhi): New pre_reload define_insn_and_split. (*vec_setv2di_0_zero_extendhi_1): Ditto. (*vec_set<mode>_0_zero_extendsi): Ditto. (*vec_setv2di_0_zero_extendsi_1): Ditto. (ssewvecmode): New mode attr. (ssewvecmodelower): Ditto. (ssepackmodelower): Ditto. gcc/testsuite/ChangeLog: * gcc.target/i386/pr104915-vmovd.c: New test. * gcc.target/i386/pr104915-vmovw.c: New test.