aboutsummaryrefslogtreecommitdiff
path: root/gcc/profile-count.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/profile-count.cc')
-rw-r--r--gcc/profile-count.cc13
1 files changed, 10 insertions, 3 deletions
diff --git a/gcc/profile-count.cc b/gcc/profile-count.cc
index 22c109a..e857cdd 100644
--- a/gcc/profile-count.cc
+++ b/gcc/profile-count.cc
@@ -94,9 +94,16 @@ profile_count::dump (FILE *f, struct function *fun) const
else if (fun && initialized_p ()
&& fun->cfg
&& ENTRY_BLOCK_PTR_FOR_FN (fun)->count.initialized_p ())
- fprintf (f, "%" PRId64 " (%s, freq %.4f)", m_val,
- profile_quality_display_names[m_quality],
- to_sreal_scale (ENTRY_BLOCK_PTR_FOR_FN (fun)->count).to_double ());
+ {
+ if (compatible_p (ENTRY_BLOCK_PTR_FOR_FN (fun)->count))
+ fprintf (f, "%" PRId64 " (%s, freq %.4f)", m_val,
+ profile_quality_display_names[m_quality],
+ to_sreal_scale
+ (ENTRY_BLOCK_PTR_FOR_FN (fun)->count).to_double ());
+ else
+ fprintf (f, "%" PRId64 " (%s, incompatible with entry block count)",
+ m_val, profile_quality_display_names[m_quality]);
+ }
else
fprintf (f, "%" PRId64 " (%s)", m_val,
profile_quality_display_names[m_quality]);