aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/gimple-iterator.c4
-rw-r--r--gcc/tree-cfg.c2
3 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c581edc..8cef08e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2009-09-10 Richard Henderson <rth@redhat.com>
+ * gimple-iterator.c (gimple_find_edge_insert_loc): Use
+ gimple_seq_empty_p to test for no PHI nodes.
+ * tree-cfg.c (split_critical_edges): Likewise.
+
+2009-09-10 Richard Henderson <rth@redhat.com>
+
* c-common.h (c_dialect_cxx, c_dialect_objc): Boolify.
2009-09-10 Hariharan Sandanagobalane <hariharan@picochip.com>
diff --git a/gcc/gimple-iterator.c b/gcc/gimple-iterator.c
index 666b47b..47aed5c 100644
--- a/gcc/gimple-iterator.c
+++ b/gcc/gimple-iterator.c
@@ -623,9 +623,9 @@ gimple_find_edge_insert_loc (edge e, gimple_stmt_iterator *gsi,
would have to examine the PHIs to prove that none of them used
the value set by the statement we want to insert on E. That
hardly seems worth the effort. */
-restart:
+ restart:
if (single_pred_p (dest)
- && ! phi_nodes (dest)
+ && gimple_seq_empty_p (phi_nodes (dest))
&& dest != EXIT_BLOCK_PTR)
{
*gsi = gsi_start_bb (dest);
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 524422f..1357064 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -7250,7 +7250,7 @@ split_critical_edges (void)
Go ahead and split them too. This matches the logic in
gimple_find_edge_insert_loc. */
else if ((!single_pred_p (e->dest)
- || phi_nodes (e->dest)
+ || !gimple_seq_empty_p (phi_nodes (e->dest))
|| e->dest == EXIT_BLOCK_PTR)
&& e->src != ENTRY_BLOCK_PTR
&& !(e->flags & EDGE_ABNORMAL))