cgraphunit.c (expand_thunk): If not expanding, set analyzed flag.
authorMartin Jambor <mjambor@suse.cz>
Wed, 10 Sep 2014 11:36:29 +0000 (13:36 +0200)
committerMartin Jambor <jamborm@gcc.gnu.org>
Wed, 10 Sep 2014 11:36:29 +0000 (13:36 +0200)
2014-09-10  Martin Jambor  <mjambor@suse.cz>

* cgraphunit.c (expand_thunk): If not expanding, set analyzed flag.
(analyze): Do not set analyze flag if expand_thunk returns false;.
(create_wrapper): Likewise.
* cgraphclones.c (duplicate_thunk_for_node): Likewise.

From-SVN: r215123

gcc/ChangeLog
gcc/cgraphclones.c
gcc/cgraphunit.c

index 3c919063c9fe14383752e552852100f0300f9d6c..acb16ab6997667279dc639790f8ef8144b393de2 100644 (file)
@@ -1,3 +1,10 @@
+2014-09-10  Martin Jambor  <mjambor@suse.cz>
+
+       * cgraphunit.c (expand_thunk): If not expanding, set analyzed flag.
+       (analyze): Do not set analyze flag if expand_thunk returns false;.
+       (create_wrapper): Likewise.
+       * cgraphclones.c (duplicate_thunk_for_node): Likewise.
+
 2014-09-10  Martin Jambor  <mjambor@suse.cz>
 
        PR ipa/61654
index 2a17de5d552538280e8073551681395ce3f581c3..224bb55eebb5f76ea1bae64e7bb780c8c3379987 100644 (file)
@@ -371,9 +371,7 @@ duplicate_thunk_for_node (cgraph_node *thunk, cgraph_node *node)
                                                  CGRAPH_FREQ_BASE);
   e->call_stmt_cannot_inline_p = true;
   symtab->call_edge_duplication_hooks (thunk->callees, e);
-  if (!new_thunk->expand_thunk (false, false))
-    new_thunk->analyzed = true;
-  else
+  if (new_thunk->expand_thunk (false, false))
     {
       new_thunk->thunk.thunk_p = false;
       new_thunk->analyze ();
index 3a9972917ecd879123853b8d85f893668de3db88..3e3b8d227005ddd52b9d25c854b617510feba571 100644 (file)
@@ -576,7 +576,6 @@ cgraph_node::analyze (void)
       if (!expand_thunk (false, false))
        {
          thunk.alias = NULL;
-         analyzed = true;
          return;
        }
       thunk.alias = NULL;
@@ -1451,7 +1450,10 @@ cgraph_node::expand_thunk (bool output_asm_thunks, bool force_gimple_thunk)
       tree restype = TREE_TYPE (TREE_TYPE (thunk_fndecl));
 
       if (!output_asm_thunks)
-       return false;
+       {
+         analyzed = true;
+         return false;
+       }
 
       if (in_lto_p)
        get_body ();
@@ -2313,9 +2315,7 @@ cgraph_node::create_wrapper (cgraph_node *target)
 
     cgraph_edge *e = create_edge (target, NULL, 0, CGRAPH_FREQ_BASE);
 
-    if (!expand_thunk (false, true))
-      analyzed = true;
-
+    expand_thunk (false, true);
     e->call_stmt_cannot_inline_p = true;
 
     /* Inline summary set-up.  */