aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple-iterator.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2009-09-10 11:27:51 -0700
committerRichard Henderson <rth@gcc.gnu.org>2009-09-10 11:27:51 -0700
commit07c358c60cd384bf048b842ad36a67dd0abab41b (patch)
tree3b011304ae6bf10c6e2ceaed9356b0f4b9b2d947 /gcc/gimple-iterator.c
parent671f9f3098adb1a7c989da1ee5180e08fb9c0f5f (diff)
downloadgcc-07c358c60cd384bf048b842ad36a67dd0abab41b.zip
gcc-07c358c60cd384bf048b842ad36a67dd0abab41b.tar.gz
gcc-07c358c60cd384bf048b842ad36a67dd0abab41b.tar.bz2
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
Diffstat (limited to 'gcc/gimple-iterator.c')
-rw-r--r--gcc/gimple-iterator.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/gcc/gimple-iterator.c b/gcc/gimple-iterator.c
index 47aed5c..876225b 100644
--- a/gcc/gimple-iterator.c
+++ b/gcc/gimple-iterator.c
@@ -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;
}
}