------- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-21 01:48 ------- Patch which I am going to test: Index: tree-ssa-pre.c =================================================================== --- tree-ssa-pre.c (revision 110030) +++ tree-ssa-pre.c (working copy) @@ -2741,10 +2741,13 @@ insert_extra_phis (basic_block block, ba edge e; edge_iterator ei; bool first = true; + bool in_ab = false; bitmap_set_t tempset = bitmap_set_new ();
FOR_EACH_EDGE (e, ei, block->preds) { + if ((e->flags & EDGE_ABNORMAL) != 0) + in_ab = true; if (first) { bitmap_set_copy (tempset, AVAIL_OUT (e->src)); @@ -2768,7 +2771,7 @@ insert_extra_phis (basic_block block, ba tree val = get_value_handle (name); tree temp; - if (SSA_NAME_OCCURS_IN_ABNORMAL_PHI (name)) + if (in_ab) continue; if (!mergephitemp -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25857