Commit b0a12b5e by Jan Hubicka Committed by Jan Hubicka

bb-reorder.c (better_edge_p): Do not build traces across abnormal/eh edges...


	* bb-reorder.c (better_edge_p): Do not build traces across abnormal/eh
	edges; zero probability is not better than uninitialized.

From-SVN: r250033
parent 5094f7d5
2017-07-06 Jan Hubicka <hubicka@ucw.cz>
* bb-reorder.c (better_edge_p): Do not build traces across abnormal/eh
edges; zero probability is not better than uninitialized.
2017-07-06 Maxim Ostapenko <m.ostapenko@samsung.com> 2017-07-06 Maxim Ostapenko <m.ostapenko@samsung.com>
* asan.h (asan_sanitize_allocas_p): Declare. * asan.h (asan_sanitize_allocas_p): Declare.
......
...@@ -957,7 +957,14 @@ better_edge_p (const_basic_block bb, const_edge e, profile_probability prob, ...@@ -957,7 +957,14 @@ better_edge_p (const_basic_block bb, const_edge e, profile_probability prob,
return !cur_best_edge return !cur_best_edge
|| cur_best_edge->dest->index > e->dest->index; || cur_best_edge->dest->index > e->dest->index;
if (prob > best_prob + diff_prob || !best_prob.initialized_p ()) /* Those edges are so expensive that continuing a trace is not useful
performance wise. */
if (e->flags & (EDGE_ABNORMAL | EDGE_EH))
return false;
if (prob > best_prob + diff_prob
|| (!best_prob.initialized_p ()
&& prob > profile_probability::guessed_never ()))
/* The edge has higher probability than the temporary best edge. */ /* The edge has higher probability than the temporary best edge. */
is_better_edge = true; is_better_edge = true;
else if (prob < best_prob - diff_prob) else if (prob < best_prob - diff_prob)
......
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