OSDN Git Service

PR middle-end/17126
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 21 Sep 2004 00:08:53 +0000 (00:08 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 21 Sep 2004 00:08:53 +0000 (00:08 +0000)
* tree-optimize.c (update_inlined_to_pointers): Fix the recursion.
(tree_rest_of_compilation): Cleanup.

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

gcc/ChangeLog
gcc/tree-optimize.c

index 167e1b9..068db13 100644 (file)
@@ -1,3 +1,9 @@
+2004-09-21  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/17126
+       * tree-optimize.c (update_inlined_to_pointers): Fix the recursion.
+       (tree_rest_of_compilation): Cleanup.
+
 2004-09-20  Ulrich Weigand  <uweigand@de.ibm.com>
 
        * config/s390/s390.c (s390_select_rtx_section): Remove.
index 86b6014..971f062 100644 (file)
@@ -553,7 +553,7 @@ update_inlined_to_pointers (struct cgraph_node *node,
       if (e->callee->global.inlined_to)
        {
          e->callee->global.inlined_to = inlined_to;
-         update_inlined_to_pointers (e->callee, node);
+         update_inlined_to_pointers (e->callee, inlined_to);
        }
     }
 }
@@ -653,15 +653,9 @@ tree_rest_of_compilation (tree fndecl, bool nested_p)
            cgraph_remove_edge (node->callees);
          node->callees = saved_node->callees;
          saved_node->callees = NULL;
+         update_inlined_to_pointers (node, node);
          for (e = node->callees; e; e = e->next_callee)
-           {
-             if (e->callee->global.inlined_to)
-               {
-                 e->callee->global.inlined_to = node;
-                 update_inlined_to_pointers (e->callee, node);
-               }
-             e->caller = node;
-           }
+           e->caller = node;
          cgraph_remove_node (saved_node);
        }
     }