aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple-iterator.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2009-09-10 18:27:51 +0000
committerRichard Henderson <rth@redhat.com>2009-09-10 18:27:51 +0000
commite677489b7e736e85a6dc913ccf7ff963c5d950bd (patch)
tree3b011304ae6bf10c6e2ceaed9356b0f4b9b2d947 /gcc/gimple-iterator.c
parent45e2c8f1de3f6061633525c069918fda7746274e (diff)
* gimple-iterator.c (gimple_find_edge_insert_loc): Insert
before GIMPLE_RETURN, not after its predecessor; insert before GIMPLE_RESX. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@151603 138bc75d-0d04-0410-961f-82ee72b054a4
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 47aed5ce4c9..876225b8bf9 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;
}
}