diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2014-04-14 19:18:54 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2014-04-14 17:18:54 +0000 |
commit | cb90235dad713561e78ca7dd929218f22919cd24 (patch) | |
tree | 194491cc20ba14600662056b4a34f745b09db2e6 /gcc/ipa-utils.c | |
parent | 7b3b340eafc59df1e79b9cb231722ea2507f04c7 (diff) | |
download | gcc-cb90235dad713561e78ca7dd929218f22919cd24.zip gcc-cb90235dad713561e78ca7dd929218f22919cd24.tar.gz gcc-cb90235dad713561e78ca7dd929218f22919cd24.tar.bz2 |
ipa-utils.c (ipa_merge_profiles): Merge profile_id.
* ipa-utils.c (ipa_merge_profiles): Merge profile_id.
* coverage.c (coverage_compute_profile_id): Handle externally visible
symbols.
* lto/lto-symtab.c (lto_cgraph_replace_node): Don't re-merge
tp_first_run.
From-SVN: r209387
Diffstat (limited to 'gcc/ipa-utils.c')
-rw-r--r-- | gcc/ipa-utils.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ipa-utils.c b/gcc/ipa-utils.c index dccecb1..8e7c7cb 100644 --- a/gcc/ipa-utils.c +++ b/gcc/ipa-utils.c @@ -660,6 +660,14 @@ ipa_merge_profiles (struct cgraph_node *dst, if (dst->tp_first_run > src->tp_first_run && src->tp_first_run) dst->tp_first_run = src->tp_first_run; + if (src->profile_id) + { + if (!dst->profile_id) + dst->profile_id = src->profile_id; + else + gcc_assert (src->profile_id == dst->profile_id); + } + if (!dst->count) return; if (cgraph_dump_file) |