diff options
author | Ian Lance Taylor <iant@golang.org> | 2021-09-13 10:37:49 -0700 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2021-09-13 10:37:49 -0700 |
commit | e252b51ccde010cbd2a146485d8045103cd99533 (patch) | |
tree | e060f101cdc32bf5e520de8e5275db9d4236b74c /gcc/predict.c | |
parent | f10c7c4596dda99d2ee872c995ae4aeda65adbdf (diff) | |
parent | 104c05c5284b7822d770ee51a7d91946c7e56d50 (diff) | |
download | gcc-e252b51ccde010cbd2a146485d8045103cd99533.zip gcc-e252b51ccde010cbd2a146485d8045103cd99533.tar.gz gcc-e252b51ccde010cbd2a146485d8045103cd99533.tar.bz2 |
Merge from trunk revision 104c05c5284b7822d770ee51a7d91946c7e56d50.
Diffstat (limited to 'gcc/predict.c')
-rw-r--r-- | gcc/predict.c | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/gcc/predict.c b/gcc/predict.c index d0a8e5f8..d9c7249 100644 --- a/gcc/predict.c +++ b/gcc/predict.c @@ -1949,7 +1949,7 @@ predict_loops (void) /* Try to predict out blocks in a loop that are not part of a natural loop. */ - FOR_EACH_LOOP (loop, LI_FROM_INNERMOST) + for (auto loop : loops_list (cfun, LI_FROM_INNERMOST)) { basic_block bb, *bbs; unsigned j, n_exits = 0; @@ -3106,7 +3106,6 @@ tree_estimate_probability (bool dry_run) { basic_block bb; - add_noreturn_fake_exit_edges (); connect_infinite_loops_to_exit (); /* We use loop_niter_by_eval, which requires that the loops have preheaders. */ @@ -4096,8 +4095,6 @@ pass_profile::execute (function *fun) if (dump_file && (dump_flags & TDF_DETAILS)) flow_loops_dump (dump_file, NULL, 0); - mark_irreducible_loops (); - nb_loops = number_of_loops (fun); if (nb_loops > 1) scev_initialize (); @@ -4114,8 +4111,7 @@ pass_profile::execute (function *fun) profile_status_for_fn (fun) = PROFILE_GUESSED; if (dump_file && (dump_flags & TDF_DETAILS)) { - class loop *loop; - FOR_EACH_LOOP (loop, LI_FROM_INNERMOST) + for (auto loop : loops_list (cfun, LI_FROM_INNERMOST)) if (loop->header->count.initialized_p ()) fprintf (dump_file, "Loop got predicted %d to iterate %i times.\n", loop->num, @@ -4290,9 +4286,7 @@ rebuild_frequencies (void) if (profile_status_for_fn (cfun) == PROFILE_GUESSED) { - loop_optimizer_init (0); - add_noreturn_fake_exit_edges (); - mark_irreducible_loops (); + loop_optimizer_init (LOOPS_HAVE_MARKED_IRREDUCIBLE_REGIONS); connect_infinite_loops_to_exit (); estimate_bb_frequencies (true); remove_fake_exit_edges (); @@ -4320,8 +4314,6 @@ report_predictor_hitrates (void) if (dump_file && (dump_flags & TDF_DETAILS)) flow_loops_dump (dump_file, NULL, 0); - mark_irreducible_loops (); - nb_loops = number_of_loops (cfun); if (nb_loops > 1) scev_initialize (); |