aboutsummaryrefslogtreecommitdiff
path: root/gcc/ipa-utils.c
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2014-04-14 19:18:54 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2014-04-14 17:18:54 +0000
commitcb90235dad713561e78ca7dd929218f22919cd24 (patch)
tree194491cc20ba14600662056b4a34f745b09db2e6 /gcc/ipa-utils.c
parent7b3b340eafc59df1e79b9cb231722ea2507f04c7 (diff)
downloadgcc-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.c8
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)