https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112532
--- Comment #6 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:e36d5f424a0dcb984620a172c73da989f215dc42 commit r14-5525-ge36d5f424a0dcb984620a172c73da989f215dc42 Author: liuhongt <hongtao....@intel.com> Date: Wed Nov 15 16:50:44 2023 +0800 Fix ICE of unrecognizable insn. The new added splitter will generate (insn 58 56 59 2 (set (reg:V4HI 20 xmm0 [129]) (vec_duplicate:V4HI (reg:HI 22 xmm2 [123]))) "testcase.c":16:21 -1 But we only have (define_insn "*vec_dupv4hi" [(set (match_operand:V4HI 0 "register_operand" "=y,Yw") (vec_duplicate:V4HI (truncate:HI (match_operand:SI 1 "register_operand" "0,Yw"))))] The patch add patterns for V4HI and V2HI. gcc/ChangeLog: PR target/112532 * config/i386/mmx.md (*vec_dup<mode>): Extend for V4HI and V2HI. gcc/testsuite/ChangeLog: * gcc.target/i386/pr112532.c: New test.