aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2005-07-16 01:26:50 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2005-07-15 23:26:50 +0000
commit3258272f5f9e9849d4fd27ca251925f78bcf429e (patch)
tree5cdc05558c66c61fb008fa241248ed71433738ba /gcc
parent01c0a9fa284b7fc10d09b4dca5f3e71f845a5ca1 (diff)
downloadgcc-3258272f5f9e9849d4fd27ca251925f78bcf429e.zip
gcc-3258272f5f9e9849d4fd27ca251925f78bcf429e.tar.gz
gcc-3258272f5f9e9849d4fd27ca251925f78bcf429e.tar.bz2
profile.c (rest_of_handle_branch_prob): Fix handling of estimation after RTL profiling.
* profile.c (rest_of_handle_branch_prob): Fix handling of estimation after RTL profiling. From-SVN: r102069
Diffstat (limited to 'gcc')
-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 054f077..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);