ipa-visibility.c (function_and_variable_visibility): Only check locality if node...
authorJan Hubicka <hubicka@ucw.cz>
Tue, 17 Feb 2015 20:58:43 +0000 (21:58 +0100)
committerJan Hubicka <hubicka@gcc.gnu.org>
Tue, 17 Feb 2015 20:58:43 +0000 (20:58 +0000)
* ipa-visibility.c (function_and_variable_visibility): Only
check locality if node is not already local.
* ipa-inline.c (want_inline_function_to_all_callers_p): Use
call_for_symbol_and_aliases instead of
call_for_symbol_thunks_and_aliases.
(ipa_inline): Likewise.
* cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases):
first walk aliases.
* ipa.c (symbol_table::remove_unreachable_nodes): Use
call_for_symbol_and_aliases.
* ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol.
(ipa_propagate_frequency_1): Use it; use opt_for_fn
(ipa_propagate_frequency): Update.
(ipa_profile): Add opt_for_fn guards.

From-SVN: r220771

gcc/ChangeLog
gcc/ipa-visibility.c

index e52e7cf205463fd75bb1fd74c445ff8ec8876880..9c0672b7471b60f4d3baa3f4480fec1ae470a87a 100644 (file)
@@ -1,3 +1,20 @@
+2015-02-17  Jan Hubicka  <hubicka@ucw.cz>
+
+       * ipa-visibility.c (function_and_variable_visibility): Only
+       check locality if node is not already local.
+       * ipa-inline.c (want_inline_function_to_all_callers_p): Use
+       call_for_symbol_and_aliases instead of
+       call_for_symbol_thunks_and_aliases.
+       (ipa_inline): Likewise.
+       * cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases):
+       first walk aliases.
+       * ipa.c (symbol_table::remove_unreachable_nodes): Use
+       call_for_symbol_and_aliases.
+       * ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol.
+       (ipa_propagate_frequency_1): Use it; use opt_for_fn
+       (ipa_propagate_frequency): Update.
+       (ipa_profile): Add opt_for_fn guards.
+
 2015-02-17  Thomas Schwinge  <thomas@codesourcery.com>
 
        * config/nvptx/mkoffload.c (parse_file): Fix logic error in
index c33ee469dbe96cf3873c3dc60901175a002662d9..9247e2976e72f59639efb33634aa0d6c94fe52fe 100644 (file)
@@ -595,7 +595,8 @@ function_and_variable_visibility (bool whole_program)
     }
   FOR_EACH_DEFINED_FUNCTION (node)
     {
-      node->local.local |= node->local_p ();
+      if (!node->local.local)
+        node->local.local |= node->local_p ();
 
       /* If we know that function can not be overwritten by a different semantics
         and moreover its section can not be discarded, replace all direct calls