Commit 86b7136a by Jan Hubicka Committed by Jan Hubicka

tree-profile.c (tree_profiling): Do not clear pure/const when not instrumenting.


	* tree-profile.c (tree_profiling): Do not clear
	pure/const when not instrumenting.
	(pass tree_profile): Add dump of symtab.

From-SVN: r228702
parent 38e9e539
2015-10-11 Jan Hubicka <hubicka@ucw.cz>
* tree-profile.c (tree_profiling): Do not clear
pure/const when not instrumenting.
(pass tree_profile): Add dump of symtab.
2015-10-11 Jan Hubicka <hubicka@ucw.cz>
* fold-const.c (fold_comparsion): Pass OEP_ADDRESS_OF when comparing
addresses.
(fold_addr_of_array_ref_difference): Likewise.
......@@ -564,20 +564,21 @@ tree_profiling (void)
}
/* Drop pure/const flags from instrumented functions. */
FOR_EACH_DEFINED_FUNCTION (node)
{
if (!gimple_has_body_p (node->decl)
|| !(!node->clone_of
|| node->decl != node->clone_of->decl))
continue;
/* Don't profile functions produced for builtin stuff. */
if (DECL_SOURCE_LOCATION (node->decl) == BUILTINS_LOCATION)
continue;
node->set_const_flag (false, false);
node->set_pure_flag (false, false);
}
if (profile_arc_flag || flag_test_coverage)
FOR_EACH_DEFINED_FUNCTION (node)
{
if (!gimple_has_body_p (node->decl)
|| !(!node->clone_of
|| node->decl != node->clone_of->decl))
continue;
/* Don't profile functions produced for builtin stuff. */
if (DECL_SOURCE_LOCATION (node->decl) == BUILTINS_LOCATION)
continue;
node->set_const_flag (false, false);
node->set_pure_flag (false, false);
}
/* Update call statements and rebuild the cgraph. */
FOR_EACH_DEFINED_FUNCTION (node)
......@@ -633,7 +634,7 @@ const pass_data pass_data_ipa_tree_profile =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
0, /* todo_flags_finish */
TODO_dump_symtab, /* todo_flags_finish */
};
class pass_ipa_tree_profile : public simple_ipa_opt_pass
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment