aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-cfg.c
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2010-03-16 12:31:38 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2010-03-16 12:31:38 +0000
commit7686fb74efd6744c19e457f7e72bdc714ba5ec3e (patch)
tree3cdfddcdbbc35835c57fd03ff638ed4bbd456263 /gcc/tree-cfg.c
parent7a1817642b2da6c3163533bf367bf6ba1a878f52 (diff)
downloadgcc-7686fb74efd6744c19e457f7e72bdc714ba5ec3e.zip
gcc-7686fb74efd6744c19e457f7e72bdc714ba5ec3e.tar.gz
gcc-7686fb74efd6744c19e457f7e72bdc714ba5ec3e.tar.bz2
re PR tree-optimization/43379 (ICE: error: SSA_NAME_OCCURS_IN_ABNORMAL_PHI should be set with -O2 -ftracer)
2010-03-16 Richard Guenther <rguenther@suse.de> PR middle-end/43379 * tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly. * gcc.dg/pr43379.c: New testcase. From-SVN: r157478
Diffstat (limited to 'gcc/tree-cfg.c')
-rw-r--r--gcc/tree-cfg.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 6f4e416..01fefc30 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -1617,6 +1617,9 @@ gimple_merge_blocks (basic_block a, basic_block b)
FOR_EACH_IMM_USE_STMT (stmt, iter, def)
FOR_EACH_IMM_USE_ON_STMT (use_p, iter)
SET_USE (use_p, use);
+
+ if (SSA_NAME_OCCURS_IN_ABNORMAL_PHI (def))
+ SSA_NAME_OCCURS_IN_ABNORMAL_PHI (use) = 1;
}
else
replace_uses_by (def, use);