gimple-iterator.c (gimple_find_edge_insert_loc): Insert before GIMPLE_RETURN, not after its predecessor; insert before GIMPLE_RESX.

* gimple-iterator.c (gimple_find_edge_insert_loc): Insert
        before GIMPLE_RETURN, not after its predecessor; insert
        before GIMPLE_RESX.

From-SVN: r151603
This commit is contained in:
Richard Henderson 2009-09-10 11:27:51 -07:00 committed by Richard Henderson
parent 671f9f3098
commit 07c358c60c
2 changed files with 11 additions and 6 deletions

View File

@ -1,11 +1,13 @@
2009-09-10 Richard Henderson <rth@redhat.com>
* gimple-iterator.c (gimple_find_edge_insert_loc): Insert
before GIMPLE_RETURN, not after its predecessor; insert
before GIMPLE_RESX.
* 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>

View File

@ -667,10 +667,13 @@ gimple_find_edge_insert_loc (edge e, gimple_stmt_iterator *gsi,
if (!stmt_ends_bb_p (tmp))
return true;
if (gimple_code (tmp) == GIMPLE_RETURN)
{
gsi_prev (gsi);
return true;
switch (gimple_code (tmp))
{
case GIMPLE_RETURN:
case GIMPLE_RESX:
return false;
default:
break;
}
}