Commit 0e8d6eb7 by Jan Hubicka Committed by Jan Hubicka

ipa-inline-analysis.c (estimate_node_size_and_time): Allow roundoff errors when…

ipa-inline-analysis.c (estimate_node_size_and_time): Allow roundoff errors when comparing specialized and unspecialized times.


	* ipa-inline-analysis.c (estimate_node_size_and_time): Allow roundoff
	errors when comparing specialized and unspecialized times.

From-SVN: r247528
parent c3b73151
2017-05-02 Jan Hubicka <hubicka@ucw.cz>
* ipa-inline-analysis.c (estimate_node_size_and_time): Allow roundoff
errors when comparing specialized and unspecialized times.
2017-05-02 David Malcolm <dmalcolm@redhat.com>
* diagnostic-show-locus.c
......@@ -356,6 +361,11 @@
2017-04-29 Jan Hubicka <hubicka@ucw.cz>
* ipa-inline.c (compute_inlined_call_time): Remove now unnecesary
overflow check.
2017-04-29 Jan Hubicka <hubicka@ucw.cz>
PR ipa/79224
* ipa-inline-analysis.c (dump_predicate): Add optional parameter NL.
(account_size_time): Use two predicates - exec_pred and
......
......@@ -3422,7 +3422,15 @@ estimate_node_size_and_time (struct cgraph_node *node,
min_size = (*info->entry)[0].size;
gcc_checking_assert (size >= 0);
gcc_checking_assert (time >= 0);
gcc_checking_assert (nonspecialized_time >= time);
/* nonspecialized_time should be always bigger than specialized time.
Roundoff issues however may get into the way. */
gcc_checking_assert ((nonspecialized_time - time) >= -1);
/* Roundoff issues may make specialized time bigger than nonspecialized
time. We do not really want that to happen because some heurstics
may get confused by seeing negative speedups. */
if (time > nonspecialized_time)
time = nonspecialized_time;
if (info->loop_iterations
&& !evaluate_predicate (info->loop_iterations, possible_truths))
......
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