https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82628
--- Comment #17 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Author: jakub Date: Mon Oct 23 14:58:23 2017 New Revision: 254011 URL: https://gcc.gnu.org/viewcvs?rev=254011&root=gcc&view=rev Log: PR target/82628 * config/i386/predicates.md (x86_64_dwzext_immediate_operand): New. * config/i386/constraints.md (Wf): New constraint. * config/i386/i386.md (UNSPEC_SBB): New unspec. (cmp<dwi>_doubleword): Removed. (sub<mode>3_carry_ccc, *sub<mode>3_carry_ccc_1): New patterns. (sub<mode>3_carry_ccgz): Use unspec instead of compare. * config/i386/i386.c (ix86_expand_branch) <case E_TImode>: Don't expand with cmp<dwi>_doubleword. For LTU and GEU use sub<mode>3_carry_ccc instead of sub<mode>3_carry_ccgz and use CCCmode. Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/constraints.md trunk/gcc/config/i386/i386.c trunk/gcc/config/i386/i386.md trunk/gcc/config/i386/predicates.md