predict.c (unlikely_executed_edge_p): Move ahead.

* predict.c (unlikely_executed_edge_p): Move ahead.
	(probably_never_executed_edge_p): Use it.

From-SVN: r249025
This commit is contained in:
Jan Hubicka 2017-06-08 18:41:35 +02:00 committed by Jan Hubicka
parent dadcc51c88
commit 5591f0dd96
2 changed files with 16 additions and 9 deletions

View File

@ -1,3 +1,8 @@
2017-06-08 Jan Hubicka <hubicka@ucw.cz>
* predict.c (unlikely_executed_edge_p): Move ahead.
(probably_never_executed_edge_p): Use it.
2017-06-08 Alexander Ivchenko <alexander.ivchenko@intel.com>
PR middle-end/79988

View File

@ -238,11 +238,22 @@ probably_never_executed_bb_p (struct function *fun, const_basic_block bb)
}
/* Return true if E is unlikely executed for obvious reasons. */
static bool
unlikely_executed_edge_p (edge e)
{
return e->count == profile_count::zero ()
|| (e->flags & (EDGE_EH | EDGE_FAKE));
}
/* Return true in case edge E is probably never executed. */
bool
probably_never_executed_edge_p (struct function *fun, edge e)
{
if (e->count.initialized_p ())
unlikely_executed_edge_p (e);
return probably_never_executed (fun, e->count, EDGE_FREQUENCY (e));
}
@ -761,15 +772,6 @@ dump_prediction (FILE *file, enum br_predictor predictor, int probability,
fprintf (file, "\n");
}
/* Return true if E is unlikely executed. */
static bool
unlikely_executed_edge_p (edge e)
{
return e->count == profile_count::zero ()
|| (e->flags & (EDGE_EH | EDGE_FAKE));
}
/* Return true if STMT is known to be unlikely executed. */
static bool