------- 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