Hi,

this is really only based on successful testing and not much analyzis
of the context but it seems that we don't need lazy node construction
here.  It would be nice not to have it after the big patch gets in.

Bootstrapped and tested on x86_64-linux without any problems, tests on
i686 in progress.

Thanks,

Martin


2011-04-06  Martin Jambor  <mjam...@suse.cz>

        * objc-act.c (mark_referenced_methods): Call cgraph_get_node
        instead of cgraph_get_create_node and assert it does not returns NULL.

Index: src/gcc/objc/objc-act.c
===================================================================
--- src.orig/gcc/objc/objc-act.c
+++ src/gcc/objc/objc-act.c
@@ -4519,16 +4519,20 @@ mark_referenced_methods (void)
       chain = CLASS_CLS_METHODS (impent->imp_context);
       while (chain)
        {
-         cgraph_mark_needed_node (
-                          cgraph_get_create_node (METHOD_DEFINITION (chain)));
+         struct cgraph_node *node;
+         node = cgraph_get_node (METHOD_DEFINITION (chain));
+         gcc_checking_assert (node);
+         cgraph_mark_needed_node (node);
          chain = DECL_CHAIN (chain);
        }
 
       chain = CLASS_NST_METHODS (impent->imp_context);
       while (chain)
        {
-         cgraph_mark_needed_node (
-                          cgraph_get_create_node (METHOD_DEFINITION (chain)));
+         struct cgraph_node *node;
+         node = cgraph_get_node (METHOD_DEFINITION (chain));
+         gcc_checking_assert (node);
+         cgraph_mark_needed_node (node);
          chain = DECL_CHAIN (chain);
        }
     }

Reply via email to