aboutsummaryrefslogtreecommitdiff
path: root/gcc/ipa-cp.c
diff options
context:
space:
mode:
authorMartin Jambor <mjambor@suse.cz>2011-09-06 16:46:55 +0200
committerMartin Jambor <jamborm@gcc.gnu.org>2011-09-06 16:46:55 +0200
commit124f1be6a97eb0263df56cb34c8ce9a8de405f1e (patch)
tree60c8adebdd85ef74f46a1d6e5721b6e999184d27 /gcc/ipa-cp.c
parent1a60c3521a55e8496c1100b8ab4d1d06ce1e829a (diff)
downloadgcc-124f1be6a97eb0263df56cb34c8ce9a8de405f1e.zip
gcc-124f1be6a97eb0263df56cb34c8ce9a8de405f1e.tar.gz
gcc-124f1be6a97eb0263df56cb34c8ce9a8de405f1e.tar.bz2
ipa-inline.h (struct inline_summary): Move versionable flag...
2011-09-06 Martin Jambor <mjambor@suse.cz> * ipa-inline.h (struct inline_summary): Move versionable flag... * cgraph.h (struct cgraph_local_info): ...here * ipa-cp.c (determine_versionability): Use the new versionable flag. (determine_versionability): Likewise. (ipcp_versionable_function_p): Likewise. (ipcp_generate_summary): Likewise. * ipa-inline-analysis.c (dump_inline_summary): Do not dump the versionable flag. (compute_inline_parameters): Do not clear the versionable flag. (inline_read_section): Do not stream the versionable flag. (inline_write_summary): Likewise. * lto-cgraph.c (lto_output_node): Stream the versionable flag. (input_overwrite_node): Likewise. From-SVN: r178598
Diffstat (limited to 'gcc/ipa-cp.c')
-rw-r--r--gcc/ipa-cp.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c
index e751899..f6e083e 100644
--- a/gcc/ipa-cp.c
+++ b/gcc/ipa-cp.c
@@ -367,7 +367,7 @@ determine_versionability (struct cgraph_node *node)
present. */
if (node->alias || node->thunk.thunk_p)
reason = "alias or thunk";
- else if (!inline_summary (node)->versionable)
+ else if (!node->local.versionable)
reason = "not a tree_versionable_function";
else if (cgraph_function_body_availability (node) <= AVAIL_OVERWRITABLE)
reason = "insufficient body availability";
@@ -376,7 +376,7 @@ determine_versionability (struct cgraph_node *node)
fprintf (dump_file, "Function %s/%i is not versionable, reason: %s.\n",
cgraph_node_name (node), node->uid, reason);
- inline_summary (node)->versionable = (reason == NULL);
+ node->local.versionable = (reason == NULL);
}
/* Return true if it is at all technically possible to create clones of a
@@ -385,7 +385,7 @@ determine_versionability (struct cgraph_node *node)
static bool
ipcp_versionable_function_p (struct cgraph_node *node)
{
- return inline_summary (node)->versionable;
+ return node->local.versionable;
}
/* Structure holding accumulated information about callers of a node. */
@@ -2449,14 +2449,11 @@ ipcp_generate_summary (void)
fprintf (dump_file, "\nIPA constant propagation start:\n");
ipa_register_cgraph_hooks ();
- /* FIXME: We could propagate through thunks happily and we could be
- even able to clone them, if needed. Do that later. */
FOR_EACH_FUNCTION_WITH_GIMPLE_BODY (node)
{
/* Unreachable nodes should have been eliminated before ipcp. */
gcc_assert (node->needed || node->reachable);
-
- inline_summary (node)->versionable = tree_versionable_function_p (node->decl);
+ node->local.versionable = tree_versionable_function_p (node->decl);
ipa_analyze_node (node);
}
}