* gimple-iterator.c (gimple_find_edge_insert_loc): Insert
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 10 Sep 2009 18:27:51 +0000 (18:27 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 10 Sep 2009 18:27:51 +0000 (18:27 +0000)
        before GIMPLE_RETURN, not after its predecessor; insert
        before GIMPLE_RESX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151603 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/gimple-iterator.c

index 8cef08e..9b91445 100644 (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>
index 47aed5c..876225b 100644 (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;
         }
     }