]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR middle-end/51273 (ICE: vector VEC(inline_summary_t,base) index domain error...
authorPatrick Marlier <patrick.marlier@gmail.com>
Thu, 1 Dec 2011 17:46:32 +0000 (17:46 +0000)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 1 Dec 2011 17:46:32 +0000 (09:46 -0800)
PR middle-end/51273
        * cgraph.h (cgraph_call_node_duplication_hooks): Declare.
        * cgraph.c (cgraph_call_node_duplication_hooks): Make global.
        * cgraphunit.c (cgraph_copy_node_for_versioning): Call it.

From-SVN: r181887

gcc/ChangeLog
gcc/cgraph.c
gcc/cgraph.h
gcc/cgraphunit.c

index 693036823b1c4167e994257fc0e05e2d9f02dc77..1261e4befc63b94209b97074da651cc1658f6f46 100644 (file)
@@ -1,3 +1,10 @@
+2011-12-01  Patrick Marlier  <patrick.marlier@gmail.com>
+
+       PR middle-end/51273
+       * cgraph.h (cgraph_call_node_duplication_hooks): Declare.
+       * cgraph.c (cgraph_call_node_duplication_hooks): Make global. 
+       * cgraphunit.c (cgraph_copy_node_for_versioning): Call it.
+
 2011-12-01  Andrew Pinski  <apinski@cavium.com>
 
        PR lto/51198
index 44a950ca7430ec456a293ccd6b7bf6ea298e4519..ac516abefba96dbbd5f3251f4275dbb03d978ee4 100644 (file)
@@ -412,7 +412,7 @@ cgraph_remove_node_duplication_hook (struct cgraph_2node_hook_list *entry)
 }
 
 /* Call all node duplication hooks.  */
-static void
+void
 cgraph_call_node_duplication_hooks (struct cgraph_node *node1,
                                    struct cgraph_node *node2)
 {
index 834d3d4a44318c5cb36e10a99ebbe9f89b40b22d..0efce347261f8d8cb2c7f8b2f37661ba172ce219 100644 (file)
@@ -513,6 +513,8 @@ struct cgraph_node * cgraph_clone_node (struct cgraph_node *, tree, gcov_type,
                                        int, bool, VEC(cgraph_edge_p,heap) *,
                                        bool);
 struct cgraph_node *cgraph_create_function_alias (tree, tree);
+void cgraph_call_node_duplication_hooks (struct cgraph_node *node1,
+                                        struct cgraph_node *node2);
 
 void cgraph_redirect_edge_callee (struct cgraph_edge *, struct cgraph_node *);
 void cgraph_make_edge_direct (struct cgraph_edge *, struct cgraph_node *);
index 40bcf8fc9ef964a6f9bd14de7cced2b220a87ff1..251b55547259accbeed793b932cb2a36bf472c87 100644 (file)
@@ -2318,6 +2318,8 @@ cgraph_copy_node_for_versioning (struct cgraph_node *old_version,
        cgraph_redirect_edge_callee (e, new_version);
      }
 
+   cgraph_call_node_duplication_hooks (old_version, new_version);
+
    return new_version;
  }