https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81747
--- Comment #6 from Segher Boessenkool <segher at gcc dot gnu.org> --- Yeah, I found out it is _not_ the one the backtrace (or GDB) points at. I have a patch: === diff --git a/gcc/cse.c b/gcc/cse.c index 6a968d1..34650d2 100644 --- a/gcc/cse.c +++ b/gcc/cse.c @@ -6642,6 +6642,7 @@ cse_extended_basic_block (struct cse_basic_block_data *ebb if (path_entry < path_size - 1 && JUMP_P (insn) && single_set (insn) + && EDGE_COUNT (bb->succs) == 2 && any_condjump_p (insn)) { basic_block next_bb = ebb_data->path[path_entry + 1].bb; === Do you want to handle it? More your timezone than mine ;-)