On 06/13/14 04:26, mliska wrote:
Hi,
this small patch prepares remaining needed infrastructure for the new pass.
Changelog:
2014-06-13 Martin Liska <mli...@suse.cz>
Honza Hubicka <hubi...@ucw.cz>
* ipa-utils.h (polymorphic_type_binfo_p): Function marked external
instead of static.
* ipa-devirt.c (polymorphic_type_binfo_p): Likewise.
* ipa-prop.h (count_formal_params): Likewise.
* ipa-prop.c (count_formal_params): Likewise.
* ipa-utils.c (ipa_merge_profiles): Be more tolerant if we merge
profiles for semantically equivalent functions.
* passes.c (do_per_function): If we load body of a function during WPA,
this condition should behave same.
* varpool.c (ctor_for_folding): More tolerant assert for variable
aliases created during WPA.
Presumably we don't have any useful way to merge the cases where we have
provides for SRC & DST in ipa_merge_profiles or even to guess which is
more useful when presented with both? Does it make sense to log this
into a debugging file when we drop one?
I think this patch is fine. If adding logging makes sense, then feel
free to do so and consider that trivial change pre-approved.
Jeff