diff options
author | Eugene Rozenfeld <erozen@microsoft.com> | 2023-09-15 18:12:47 -0700 |
---|---|---|
committer | Eugene Rozenfeld <erozen@microsoft.com> | 2023-10-09 13:07:11 -0700 |
commit | cc50337215535e17f1caa5eae34eaa650223c96b (patch) | |
tree | 79d91b5608276597792b61f7186d77796128a66a /gcc/auto-profile.cc | |
parent | 08d0f840dc7ad212ab75d094373b01cbfc004e67 (diff) | |
download | gcc-cc50337215535e17f1caa5eae34eaa650223c96b.zip gcc-cc50337215535e17f1caa5eae34eaa650223c96b.tar.gz gcc-cc50337215535e17f1caa5eae34eaa650223c96b.tar.bz2 |
Fixes for profile count/probability maintenance
Verifier checks have recently been strengthened to check that
all counts and probabilities are initialized. The checks fired
during autoprofiledbootstrap build and this patch fixes it.
Tested on x86_64-pc-linux-gnu.
gcc/ChangeLog:
* auto-profile.cc (afdo_calculate_branch_prob): Fix count comparisons
* tree-vect-loop-manip.cc (vect_do_peeling): Guard against zero count
when scaling loop profile
Diffstat (limited to 'gcc/auto-profile.cc')
-rw-r--r-- | gcc/auto-profile.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/auto-profile.cc b/gcc/auto-profile.cc index ff3b763..e75b046 100644 --- a/gcc/auto-profile.cc +++ b/gcc/auto-profile.cc @@ -1434,7 +1434,7 @@ afdo_calculate_branch_prob (bb_set *annotated_bb) else total_count += AFDO_EINFO (e)->get_count (); } - if (num_unknown_succ == 0 && total_count > profile_count::zero ()) + if (num_unknown_succ == 0 && total_count.nonzero_p()) { FOR_EACH_EDGE (e, ei, bb->succs) e->probability @@ -1571,7 +1571,7 @@ afdo_annotate_cfg (const stmt_set &promoted_stmts) DECL_SOURCE_LOCATION (current_function_decl)); afdo_source_profile->mark_annotated (cfun->function_start_locus); afdo_source_profile->mark_annotated (cfun->function_end_locus); - if (max_count > profile_count::zero ()) + if (max_count.nonzero_p()) { /* Calculate, propagate count and probability information on CFG. */ afdo_calculate_branch_prob (&annotated_bb); |