summaryrefslogtreecommitdiff
path: root/gcc
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
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')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/ipa-profile.c2
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e50209f89f7..a18f4952715 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2013-12-14 Jan Hubicka <jh@suse.cz>
+ Markus Trippelsdorf <octoploid@yandex.com>
+
+ PR ipa/59265
+ * ipa-profile.c (ipa_profile_generate_summary): Do not ICE when
+ call is already devirtualized.
+
2013-12-16 Jakub Jelinek <jakub@redhat.com>
* Makefile.in (version.o): Restore dependencies on
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