diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-20 06:15:03 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-20 06:15:03 +0000 |
commit | 7ef91cea646c4ff988abf9f9757854b634fdcc60 (patch) | |
tree | b027bc052b062a295ed4e82de7214afde37561ce /gcc/ipa-polymorphic-call.c | |
parent | c8a9f04cede6b53babac327d35d592b101c7896e (diff) | |
download | gcc-7ef91cea646c4ff988abf9f9757854b634fdcc60.tar.gz |
* tree.c (free_lang_data_in_type): If BINFO has no important
information in it, set it to NULL.
(get_binfo_at_offset): Do not walk fields, only bases.
* ipa-utils.h (polymorphic_type_binfo_p): Be ready for BINFO_TYPE
to be NULL.
* ipa-polymorphic-call.c (record_known_type): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217824 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ipa-polymorphic-call.c')
-rw-r--r-- | gcc/ipa-polymorphic-call.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/ipa-polymorphic-call.c b/gcc/ipa-polymorphic-call.c index 452f2d26a5a..249f0d7286f 100644 --- a/gcc/ipa-polymorphic-call.c +++ b/gcc/ipa-polymorphic-call.c @@ -1307,6 +1307,7 @@ record_known_type (struct type_change_info *tci, tree type, HOST_WIDE_INT offset if (type && (offset || (TREE_CODE (type) != RECORD_TYPE + || !TYPE_BINFO (type) || !polymorphic_type_binfo_p (TYPE_BINFO (type))))) { ipa_polymorphic_call_context context; |