summaryrefslogtreecommitdiff
path: root/gcc/ipa-profile.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2013-12-16 14:37:43 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2013-12-16 13:37:43 +0000
commitfd3c9a7ebcb741206fc934a39784cc1d83cd56fd (patch)
tree8254e760921a563f650d749f7763c66d9042710a /gcc/ipa-profile.c
parent609458ae1d6085cf89b9bda4e6af1195b279aef7 (diff)
downloadgcc-fd3c9a7ebcb741206fc934a39784cc1d83cd56fd.tar.gz
re PR ipa/59265 (Segmentation fault in ipa_note_param_call for -fprofile-use in SPEC CPU2006)
PR ipa/59265 * ipa-profile.c (ipa_profile_generate_summary): Do not ICE when call is already devirtualized. Co-Authored-By: Markus Trippelsdorf <octoploid@yandex.com> From-SVN: r206014
Diffstat (limited to 'gcc/ipa-profile.c')
-rw-r--r--gcc/ipa-profile.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/ipa-profile.c b/gcc/ipa-profile.c
index ef9e2422492..a84b62dca72 100644
--- a/gcc/ipa-profile.c
+++ b/gcc/ipa-profile.c
@@ -210,6 +210,8 @@ ipa_profile_generate_summary (void)
if (h->hvalue.counters[2])
{
struct cgraph_edge * e = cgraph_edge (node, stmt);
+ if (e && !e->indirect_unknown_callee)
+ continue;
e->indirect_info->common_target_id
= h->hvalue.counters [0];
e->indirect_info->common_target_probability