https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107093
--- 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:498ad738690b3c464f901d63dcd4d0f49a50dd00 commit r13-3218-g498ad738690b3c464f901d63dcd4d0f49a50dd00 Author: liuhongt <hongtao....@intel.com> Date: Mon Oct 10 11:31:48 2022 +0800 Add define_insn_and_split to support general version of "kxnor". For genereal_reg_operand, it will be splitted into xor + not. For mask_reg_operand, it will be splitted with UNSPEC_MASK_OP just like what we did for other logic operations. The patch will optimize xor+not to kxnor when possible. gcc/ChangeLog: PR target/107093 * config/i386/i386.md (*notxor<mode>_1): New post_reload define_insn_and_split. (*notxorqi_1): Ditto. gcc/testsuite/ChangeLog: * gcc.target/i386/pr107093.c: New test.