From ebd3e642dd3c7969f462b65dfd155a91c3972701 Mon Sep 17 00:00:00 2001 From: Teresa Johnson Date: Fri, 14 Dec 2012 15:10:45 +0000 Subject: [PATCH] re PR gcov-profile/55674 (>20% size increase of lto/pgo binaries since r193747) 2012-12-14 Teresa Johnson PR gcov-profile/55674 * lto-cgraph.c (merge_profile_summaries): Set min correctly the first time we merge into a histogram entry. From-SVN: r194502 --- gcc/ChangeLog | 6 ++++++ gcc/lto-cgraph.c | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fe4e1e16582..08538144c65 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2012-12-14 Teresa Johnson + + PR gcov-profile/55674 + * lto-cgraph.c (merge_profile_summaries): Set min correctly the + first time we merge into a histogram entry. + 2012-12-14 Richard Biener PR tree-optimization/55684 diff --git a/gcc/lto-cgraph.c b/gcc/lto-cgraph.c index 85b1ea4a5f3..73a58f03206 100644 --- a/gcc/lto-cgraph.c +++ b/gcc/lto-cgraph.c @@ -1368,7 +1368,9 @@ merge_profile_summaries (struct lto_file_decl_data **file_data_vec) so we need to account for a non-zero histogram entry at new_ix. */ unsigned new_ix = gcov_histo_index (scaled_min); lto_gcov_summary.histogram[new_ix].min_value - = MIN (lto_gcov_summary.histogram[new_ix].min_value, scaled_min); + = (lto_gcov_summary.histogram[new_ix].num_counters + ? MIN (lto_gcov_summary.histogram[new_ix].min_value, scaled_min) + : scaled_min); /* Some of the scaled counter values would ostensibly need to be placed into different (larger) histogram buckets, but we keep things simple here and place the scaled cumulative counter value in the bucket -- 2.30.2