https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83641
--- Comment #4 from Jeffrey A. Law <law at gcc dot gnu.org> --- Author: law Date: Wed Jan 3 21:25:10 2018 New Revision: 256191 URL: https://gcc.gnu.org/viewcvs?rev=256191&root=gcc&view=rev Log: PR target/83641 * config/i386/i386.c (ix86_adjust_stack_and_probe_stack_clash): For noreturn probe, use gen_pop instead of ix86_emit_restore_reg_using_pop, only set RTX_FRAME_RELATED_P on both the push and pop if cfa_reg is sp and add REG_CFA_ADJUST_CFA notes in that case to both insns. PR target/83641 * config/i386/i386.c (ix86_adjust_stack_and_probe_stack_clash): Do not explicitly probe *sp in a noreturn function if there were any callee register saves or frame pointer is needed. PR target/83641 * gcc.target/i386/stack-check-17.c: New test. * gcc.target/i386/stack-check-12.c: Drop unnecessary asm. Added: trunk/gcc/testsuite/gcc.target/i386/stack-check-17.c Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.target/i386/stack-check-12.c