> It's apparently another bug in the DCE pass.
But it comes from a stalled ABNORMAL flag after the FRE3 pass so:
Index: tree-ssa-pre.c
===================================================================
--- tree-ssa-pre.c (revision 231856)
+++ tree-ssa-pre.c (working copy)
@@ -4128,6 +4128,14 @@ eliminate_dom_walker::before_dom_childre
print_gimple_stmt (dump_file, stmt, 0, 0);
}
+ if (is_gimple_call (stmt)
+ && stmt_can_make_abnormal_goto (stmt))
+ {
+ bitmap_set_bit (need_ab_cleanup, gimple_bb (stmt)-
>index);
+ if (dump_file && (dump_flags & TDF_DETAILS))
+ fprintf (dump_file, " Removed AB side-effects.\n");
+ }
+
pre_stats.eliminations++;
continue;
}
is apparently sufficient. Testing...
--
Eric Botcazou