Hi, this is the bootstrap failure of GCC 11 on MinGW64 configured with --enable- tune=nocona. The bottom line is that SEH does not support CFI for epilogues but the x86 back-end nevertheless attaches it to instructions, so we have to filter it out and this is done by detecting the end of the prologue by means of the NOTE_INSN_PROLOGUE_END note. But the compiler manages to generate a second epilogue before this note in the RTL stream and this fools the above logic. The root cause is cross-jumping, which inserts a jump before the end of the prologue (in fact just before the note); the rest (CFG cleanup, BB reordering) is downhill from there. Tested on x86-64/Linux and x86-64/Windows, OK for mainline and 11 branch? 2021-05-05 Eric Botcazou PR rtl-optimization/100411 * cfgcleanup.c (try_crossjump_to_edge): Also skip end of prologue and beginning of function markers. -- Eric Botcazou