On 10/21/20 12:06 PM, Jan Hubicka wrote:
I think the streaming should happen only from ipa-fnsummary. Oriignally ipa-prop was ipa-cp only, then indirect inlining was added, but these days we have specialized analysis pass and thus ipa-prop should be intergrated to it.
All right, there's a WIP patch but it ICEs at various places: gcc main.o during IPA pass: fnsummary lto1: internal compiler error: Segmentation fault 0xc909ff crash_signal /home/marxin/Programming/gcc/gcc/toplev.c:330 0x7ffff788e6bf ??? /usr/src/debug/glibc-2.32-1.1.x86_64/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0 0xa7cfbd hash_table_mod1(unsigned int, unsigned int) /home/marxin/Programming/gcc/gcc/hash-table.h:344 0xa7cfbd hash_table<hash_map<int_hash<int, 0, -1>, ipa_node_params*, simple_hashmap_traits<default_hash_traits<int_hash<int, 0, -1> >, ipa_node_params*> >::hash_entry, false, xcallocator>::find_with_hash(int const&, unsigned int) /home/marxin/Programming/gcc/gcc/hash-table.h:911 0xa79216 hash_map<int_hash<int, 0, -1>, ipa_node_params*, simple_hashmap_traits<default_hash_traits<int_hash<int, 0, -1> >, ipa_node_params*> >::get(int const&) /home/marxin/Programming/gcc/gcc/hash-map.h:185 0xa79216 function_summary<ipa_node_params*>::get(cgraph_node*) /home/marxin/Programming/gcc/gcc/symbol-summary.h:163 0xa79216 inline_read_section /home/marxin/Programming/gcc/gcc/ipa-fnsummary.c:4314 0xa79ee0 ipa_fn_summary_read /home/marxin/Programming/gcc/gcc/ipa-fnsummary.c:4478 0xbc0ead ipa_read_summaries_1 /home/marxin/Programming/gcc/gcc/passes.c:2844 0x7e31aa read_cgraph_and_symbols(unsigned int, char const**) /home/marxin/Programming/gcc/gcc/lto/lto-common.c:2919 0x7cb6e2 lto_main() /home/marxin/Programming/gcc/gcc/lto/lto.c:625 Can you please you or Martin finish the patch? Thanks, Martin