https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67512
--- Comment #4 from Marek Polacek <mpolacek at gcc dot gnu.org> --- --- a/gcc/tree-ssa-uninit.c +++ b/gcc/tree-ssa-uninit.c @@ -1296,7 +1296,8 @@ pred_equal_p (pred_info x1, pred_info x2) return false; c1 = x1.cond_code; - if (x1.invert != x2.invert) + if (x1.invert != x2.invert + && TREE_CODE_CLASS (x2.cond_code) == tcc_comparison) c2 = invert_tree_comparison (x2.cond_code, false); else c2 = x2.cond_code; should be enough though I'd like to know what exactly 'invert' in pred_info means.