https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86038
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- So instead of dropping the initialized_p () check in the original below we should probably return NULL as well if !initialized_p (). if (best->probability.initialized_p () && best->probability.to_reg_br_prob_base () <= probability_cutoff) return NULL; Testing Index: gcc/tracer.c =================================================================== --- gcc/tracer.c (revision 261136) +++ gcc/tracer.c (working copy) @@ -159,7 +159,8 @@ find_best_successor (basic_block bb) } if (!best || ignore_bb_p (best->dest)) return NULL; - if (best->probability.to_reg_br_prob_base () <= probability_cutoff) + if (!best->probability.initialized_p () + || best->probability.to_reg_br_prob_base () <= probability_cutoff) return NULL; return best; }