aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/ipa-fnsummary.c14
-rw-r--r--gcc/ipa-inline-analysis.c2
-rw-r--r--gcc/ipa-inline.c8
-rw-r--r--gcc/ipa-inline.h7
5 files changed, 23 insertions, 16 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c306be8..d44a78d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,13 @@
2018-06-08 Martin Liska <mliska@suse.cz>
+ * ipa-fnsummary.c (dump_ipa_call_summary): Use ::get method.
+ (analyze_function_body): Extract multiple calls of get_create.
+ * ipa-inline-analysis.c (simple_edge_hints): Likewise.
+ * ipa-inline.c (recursive_inlining): Use ::get method.
+ * ipa-inline.h (estimate_edge_growth): Likewise.
+
+2018-06-08 Martin Liska <mliska@suse.cz>
+
* hsa-common.h (enum hsa_function_kind): Rename HSA_NONE to
HSA_INVALID.
(hsa_function_summary::hsa_function_summary): Use the new enum
diff --git a/gcc/ipa-fnsummary.c b/gcc/ipa-fnsummary.c
index 8a6c5d0..e40b537 100644
--- a/gcc/ipa-fnsummary.c
+++ b/gcc/ipa-fnsummary.c
@@ -850,7 +850,7 @@ dump_ipa_call_summary (FILE *f, int indent, struct cgraph_node *node,
}
if (!edge->inline_failed)
{
- ipa_fn_summary *s = ipa_fn_summaries->get_create (callee);
+ ipa_fn_summary *s = ipa_fn_summaries->get (callee);
fprintf (f, "%*sStack frame offset %i, callee self size %i,"
" callee size %i\n",
indent + 2, "",
@@ -2363,10 +2363,9 @@ analyze_function_body (struct cgraph_node *node, bool early)
}
free (body);
}
- set_hint_predicate (&ipa_fn_summaries->get_create (node)->loop_iterations,
- loop_iterations);
- set_hint_predicate (&ipa_fn_summaries->get_create (node)->loop_stride,
- loop_stride);
+ ipa_fn_summary *s = ipa_fn_summaries->get_create (node);
+ set_hint_predicate (&s->loop_iterations, loop_iterations);
+ set_hint_predicate (&s->loop_stride, loop_stride);
scev_finalize ();
}
FOR_ALL_BB_FN (bb, my_function)
@@ -2384,8 +2383,9 @@ analyze_function_body (struct cgraph_node *node, bool early)
e->aux = NULL;
}
}
- ipa_fn_summaries->get_create (node)->time = time;
- ipa_fn_summaries->get_create (node)->self_size = size;
+ ipa_fn_summary *s = ipa_fn_summaries->get_create (node);
+ s->time = time;
+ s->self_size = size;
nonconstant_names.release ();
ipa_release_body_info (&fbi);
if (opt_for_fn (node->decl, optimize))
diff --git a/gcc/ipa-inline-analysis.c b/gcc/ipa-inline-analysis.c
index c4f9047..2e30a6d 100644
--- a/gcc/ipa-inline-analysis.c
+++ b/gcc/ipa-inline-analysis.c
@@ -126,7 +126,7 @@ simple_edge_hints (struct cgraph_edge *edge)
? edge->caller->global.inlined_to : edge->caller);
struct cgraph_node *callee = edge->callee->ultimate_alias_target ();
if (ipa_fn_summaries->get_create (to)->scc_no
- && ipa_fn_summaries->get_create (to)->scc_no
+ && ipa_fn_summaries->get (to)->scc_no
== ipa_fn_summaries->get_create (callee)->scc_no
&& !edge->recursive_p ())
hints |= INLINE_HINT_same_scc;
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index ffde9b9..51044b7 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -1559,10 +1559,10 @@ recursive_inlining (struct cgraph_edge *edge,
fprintf (dump_file,
"\n Inlined %i times, "
"body grown from size %i to %i, time %f to %f\n", n,
- ipa_fn_summaries->get_create (master_clone)->size,
- ipa_fn_summaries->get_create (node)->size,
- ipa_fn_summaries->get_create (master_clone)->time.to_double (),
- ipa_fn_summaries->get_create (node)->time.to_double ());
+ ipa_fn_summaries->get (master_clone)->size,
+ ipa_fn_summaries->get (node)->size,
+ ipa_fn_summaries->get (master_clone)->time.to_double (),
+ ipa_fn_summaries->get (node)->time.to_double ());
/* Remove master clone we used for inlining. We rely that clones inlined
into master clone gets queued just before master clone so we don't
diff --git a/gcc/ipa-inline.h b/gcc/ipa-inline.h
index e8ae206..06bd38e 100644
--- a/gcc/ipa-inline.h
+++ b/gcc/ipa-inline.h
@@ -81,10 +81,9 @@ estimate_edge_size (struct cgraph_edge *edge)
static inline int
estimate_edge_growth (struct cgraph_edge *edge)
{
- gcc_checking_assert (ipa_call_summaries->get_create (edge)->call_stmt_size
- || !edge->callee->analyzed);
- return (estimate_edge_size (edge)
- - ipa_call_summaries->get_create (edge)->call_stmt_size);
+ ipa_call_summary *s = ipa_call_summaries->get_create (edge);
+ gcc_checking_assert (s->call_stmt_size || !edge->callee->analyzed);
+ return (estimate_edge_size (edge) - s->call_stmt_size);
}
/* Return estimated callee runtime increase after inlining