re PR bootstrap/63432 (profiledbootstrap failure with bootstrap-lto)
2014-10-15 Teresa Johnson <tejohnson@google.com> PR bootstrap/63432 * tree-ssa-threadupdate.c (recompute_probabilities): Better overflow checking. From-SVN: r216269
This commit is contained in:
parent
bb8c2886db
commit
e631038f4b
2 changed files with 21 additions and 13 deletions
|
@ -1,3 +1,9 @@
|
|||
2014-10-15 Teresa Johnson <tejohnson@google.com>
|
||||
|
||||
PR bootstrap/63432
|
||||
* tree-ssa-threadupdate.c (recompute_probabilities): Better
|
||||
overflow checking.
|
||||
|
||||
2014-10-15 Renlin Li <renlin.li@arm.com>
|
||||
|
||||
* config/aarch64/aarch64.h (TARGET_CPU_CPP_BUILTINS): Define
|
||||
|
|
|
@ -871,21 +871,23 @@ recompute_probabilities (basic_block bb)
|
|||
edge_iterator ei;
|
||||
FOR_EACH_EDGE (esucc, ei, bb->succs)
|
||||
{
|
||||
if (bb->count)
|
||||
if (!bb->count)
|
||||
continue;
|
||||
|
||||
/* Prevent overflow computation due to insane profiles. */
|
||||
if (esucc->count < bb->count)
|
||||
esucc->probability = GCOV_COMPUTE_SCALE (esucc->count,
|
||||
bb->count);
|
||||
if (esucc->probability > REG_BR_PROB_BASE)
|
||||
{
|
||||
/* Can happen with missing/guessed probabilities, since we
|
||||
may determine that more is flowing along duplicated
|
||||
path than joiner succ probabilities allowed.
|
||||
Counts and freqs will be insane after jump threading,
|
||||
at least make sure probability is sane or we will
|
||||
get a flow verification error.
|
||||
Not much we can do to make counts/freqs sane without
|
||||
redoing the profile estimation. */
|
||||
esucc->probability = REG_BR_PROB_BASE;
|
||||
}
|
||||
else
|
||||
/* Can happen with missing/guessed probabilities, since we
|
||||
may determine that more is flowing along duplicated
|
||||
path than joiner succ probabilities allowed.
|
||||
Counts and freqs will be insane after jump threading,
|
||||
at least make sure probability is sane or we will
|
||||
get a flow verification error.
|
||||
Not much we can do to make counts/freqs sane without
|
||||
redoing the profile estimation. */
|
||||
esucc->probability = REG_BR_PROB_BASE;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue