On 09/04/2018 05:07 PM, Martin Liška wrote: > - in order to achieve real speed up we need to split also other generated > (and also dwarf2out.c, i386.c, ..) files: > here I'm most concerned about insn-recog.c, which can't be split the same way > without ending up with a single huge SCC component.
About the insn-recog.c file: all functions are static and using SCC one ends up with all functions in one component. In order to split the callgraph one needs to promote some functions to be extern and then split would be possible. In order to do that we'll probably need to teach splitter how to do partitioning based on minimal number of edges to be removed. I need to inspire in lto_balanced_map, or is there some simple algorithm I can start with? Martin