aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2019-11-18 20:28:53 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2019-11-18 19:28:53 +0000
commit8d890d37e0183735586c18f1f056deb5848617ca (patch)
tree0d638d75291cc6786b2a339c529209f6b659553f /gcc
parent092508a07975a00b3bc7c4c6ef551d5b6dc2c193 (diff)
downloadgcc-8d890d37e0183735586c18f1f056deb5848617ca.zip
gcc-8d890d37e0183735586c18f1f056deb5848617ca.tar.gz
gcc-8d890d37e0183735586c18f1f056deb5848617ca.tar.bz2
re PR ipa/92508 (ICE in do_estimate_edge_time, at ipa-inline-analysis.c:223 since r278159)
PR ipa/92508 * ipa-inline.c (inline_small_functions): Add new edges after reseting caches. * ipa-inline-analysis.c (do_estimate_edge_time): Fix sanity check. From-SVN: r278419
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/ipa-inline-analysis.c2
-rw-r--r--gcc/ipa-inline.c3
3 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c57e8c4..4e381af 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2019-11-18 Jan Hubicka <jh@suse.cz>
+
+ PR ipa/92508
+ * ipa-inline.c (inline_small_functions): Add new edges after reseting
+ caches.
+ * ipa-inline-analysis.c (do_estimate_edge_time): Fix sanity check.
+
2019-11-18 Richard Sandiford <richard.sandiford@arm.com>
* doc/sourcebuild.texi (vect_check_ptrs): Document.
diff --git a/gcc/ipa-inline-analysis.c b/gcc/ipa-inline-analysis.c
index d550d30..b5a55a7 100644
--- a/gcc/ipa-inline-analysis.c
+++ b/gcc/ipa-inline-analysis.c
@@ -211,7 +211,7 @@ do_estimate_edge_time (struct cgraph_edge *edge, sreal *ret_nonspec_time)
nonspec_time = e->entry.nonspec_time;
hints = e->entry.hints;
if (flag_checking
- && !edge->callee->count.ipa_p ())
+ && !callee->count.ipa_p ())
{
sreal chk_time, chk_nonspec_time;
int chk_size, chk_min_size;
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index 7fcb200..1f77ba2 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -2136,9 +2136,8 @@ inline_small_functions (void)
gcc_checking_assert (!callee->inlined_to);
inline_call (edge, true, &new_indirect_edges, &overall_size, true);
- add_new_edges_to_heap (&edge_heap, new_indirect_edges);
-
reset_edge_caches (edge->callee);
+ add_new_edges_to_heap (&edge_heap, new_indirect_edges);
update_callee_keys (&edge_heap, where, updated_nodes);
}