]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
cgraph.c (cgraph_resolve_speculation): Use semantical equivalency test.
authorJan Hubicka <jh@suse.cz>
Wed, 25 Sep 2013 09:48:55 +0000 (11:48 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Wed, 25 Sep 2013 09:48:55 +0000 (09:48 +0000)
* cgraph.c (cgraph_resolve_speculation): Use semantical equivalency
test.

From-SVN: r202888

gcc/ChangeLog
gcc/cgraph.c

index e6f2b9ea8fd77d5861cf5ba3bce2a68f4925e48d..775d562871e155e17fe5a5765339b023420191a3 100644 (file)
@@ -1,3 +1,8 @@
+2013-09-25  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.c (cgraph_resolve_speculation): Use semantical equivalency
+       test.
+
 2013-09-25  Marek Polacek  <polacek@redhat.com>
 
        PR sanitizer/58420
index 722f8ca97e9631391d5cf59b093246f7c17e0f0f..e84ce948d90d6f484c2fe2bdc8614a53026371b4 100644 (file)
@@ -1188,7 +1188,9 @@ cgraph_resolve_speculation (struct cgraph_edge *edge, tree callee_decl)
 
   gcc_assert (edge->speculative);
   cgraph_speculative_call_info (edge, e2, edge, ref);
-  if (ref->referred->symbol.decl != callee_decl)
+  if (!callee_decl
+      || !symtab_semantically_equivalent_p ((symtab_node) ref->referred,
+                                           symtab_get_node (callee_decl)))
     {
       if (dump_file)
        {