diff options
author | Jan Hubicka <jh@suse.cz> | 2011-01-11 00:37:11 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2011-01-10 23:37:11 +0000 |
commit | c459c97b48db9873096c6efed9180316e593dfe1 (patch) | |
tree | 38db9558be8fbc051a05a44f8cbe18b7eeaff89e | |
parent | 06c9eb5136fe0e778cc3a643131eba2a3dfb77a8 (diff) | |
download | gcc-c459c97b48db9873096c6efed9180316e593dfe1.tar.gz |
re PR lto/45375 ([meta-bug] Issues with building Mozilla (i.e. Firefox) with LTO)
PR lto/45375
* profile.c (read_profile_edge_counts): Ignore profile inconistency
when correcting profile.
From-SVN: r168643
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/profile.c | 13 |
2 files changed, 17 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 14d5066fdf0..2c5b123a4bb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2011-01-10 Jan Hubicka <jh@suse.cz> + PR lto/45375 + * profile.c (read_profile_edge_counts): Ignore profile inconistency + when correcting profile. + +2011-01-10 Jan Hubicka <jh@suse.cz> + PR lto/46083 * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store DECL_FINI_PRIORITY. diff --git a/gcc/profile.c b/gcc/profile.c index bde8b4677f9..2334101ba8c 100644 --- a/gcc/profile.c +++ b/gcc/profile.c @@ -409,8 +409,17 @@ read_profile_edge_counts (gcov_type *exec_counts) e->count = exec_counts[exec_counts_pos++]; if (e->count > profile_info->sum_max) { - error ("corrupted profile info: edge from %i to %i exceeds maximal count", - bb->index, e->dest->index); + if (flag_profile_correction) + { + static bool informed = 0; + if (!informed) + inform (input_location, + "corrupted profile info: edge count exceeds maximal count"); + informed = 1; + } + else + error ("corrupted profile info: edge from %i to %i exceeds maximal count", + bb->index, e->dest->index); } } else |