aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2014-10-02 07:49:32 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2014-10-02 05:49:32 +0000
commit9189aff736d51a1884d983010bfebfeb16d57516 (patch)
tree04212c20c9eee0f3c73e413798e49fe188f784f2
parentfe7bf32edf45d01fee099fccdca67dd3a0f0064d (diff)
downloadgcc-9189aff736d51a1884d983010bfebfeb16d57516.zip
gcc-9189aff736d51a1884d983010bfebfeb16d57516.tar.gz
gcc-9189aff736d51a1884d983010bfebfeb16d57516.tar.bz2
ipa.c (walk_polymorphic_call_targets): Avoid ICE when dumping during WPA.
* ipa.c (walk_polymorphic_call_targets): Avoid ICE when dumping during WPA. From-SVN: r215792
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/ipa.c6
2 files changed, 12 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 354fa6a..5ca6183 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,9 +1,14 @@
-2014-10-01 Jan HUbicka <hubicka@ucw.cz>
+2014-10-01 Jan Hubicka <hubicka@ucw.cz>
+
+ * ipa.c (walk_polymorphic_call_targets): Avoid ICE when
+ dumping during WPA.
+
+2014-10-01 Jan Hubicka <hubicka@ucw.cz>
* ipa-prop.c (ipa_modify_formal_parameters): Do not merge
type variants.
-2014-10-01 Jan HUbicka <hubicka@ucw.cz>
+2014-10-01 Jan Hubicka <hubicka@ucw.cz>
* ipa-polymorphic-call.c
(ipa_polymorphic_call_context::restrict_to_inner_class):
diff --git a/gcc/ipa.c b/gcc/ipa.c
index 3c35e47..c8d7ab9 100644
--- a/gcc/ipa.c
+++ b/gcc/ipa.c
@@ -198,7 +198,11 @@ walk_polymorphic_call_targets (hash_set<void *> *reachable_call_targets,
if (dump_enabled_p ())
{
- location_t locus = gimple_location (edge->call_stmt);
+ location_t locus;
+ if (edge->call_stmt)
+ locus = gimple_location (edge->call_stmt);
+ else
+ locus = UNKNOWN_LOCATION;
dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, locus,
"devirtualizing call in %s/%i to %s/%i\n",
edge->caller->name (), edge->caller->order,