diff options
author | Richard Henderson <rth@redhat.com> | 2009-09-10 11:27:51 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2009-09-10 11:27:51 -0700 |
commit | 07c358c60cd384bf048b842ad36a67dd0abab41b (patch) | |
tree | 3b011304ae6bf10c6e2ceaed9356b0f4b9b2d947 /gcc/gimple-iterator.c | |
parent | 671f9f3098adb1a7c989da1ee5180e08fb9c0f5f (diff) | |
download | gcc-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.c | 11 |
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; } } |