> Jan Hubicka <hubi...@ucw.cz> writes: > > > * alias.c (alias_set_entry_d): Add is_pointer and has_pointer. > > (alias_stats): Add num_universal. > > (alias_set_subset_of): Special case pointers; be ready for NULL > > children. > > (alias_sets_conflict_p): Special case pointers; be ready for NULL > > children. > > (init_alias_set_entry): Break out from ... > > (record_alias_subset): ... here; propagate new fields; > > allocate children only when really needed. > > (get_alias_set): Do less generous pointer globbing. > > (dump_alias_stats_in_alias_c): Update statistics. > > * gcc.dg/alias-8.c: Do not xfail. > > * gcc.dg/pr62167.c: Prevent FRE. > > * gcc.dg/alias-14.c: New testcase. > > This is causing a miscompilation of the stage2 compiler on ia64.
Hmm, lovely :( According to GCC compile farm wiki, GCC 60 and 66 are ia64 but they are not. I am not sure I have access to working ia64 box. Can you possibly help me to debug this? Is it devirtualization related? With earlier versions of the patch I run into issue of ipa-icf ICEing in sem_function::parse because ipa_polymorphic_call_context::get_dynamic_type missed initialization of VPTR. I pushed out just partial fix to the issue as I want to test it on Firefox first and I am running into intresting issues with Firefox LTO right now (unrelated to the aliasing). With some luck it is the same problem because IA-64 has different representation of function pointers. Honza > > Andreas. > > -- > Andreas Schwab, sch...@linux-m68k.org > GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 > "And now for something completely different."