aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/profile.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bbb9248..25cc46d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-07-16 Jan Hubicka <jh@suse.cz>
+
+ * profile.c (rest_of_handle_branch_prob): Fix handling of estimation
+ after RTL profiling.
+
2005-07-11 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/22398
diff --git a/gcc/profile.c b/gcc/profile.c
index 054f0771..1e0c3b8 100644
--- a/gcc/profile.c
+++ b/gcc/profile.c
@@ -1381,7 +1381,9 @@ rest_of_handle_branch_prob (void)
flow_loops_dump (&loops, dump_file, NULL, 0);
/* Estimate using heuristics if no profiling info is available. */
- if (flag_guess_branch_prob && profile_status == PROFILE_ABSENT)
+ if (flag_guess_branch_prob
+ && (profile_status == PROFILE_ABSENT
+ || (profile_status == PROFILE_READ && !flag_tree_based_profiling)))
estimate_probability (&loops);
flow_loops_free (&loops);