https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60243
--- Comment #22 from Jan Hubicka <hubicka at ucw dot cz> --- > The IPA SRA time is all spent in compute_fn_summary via convert_callers. > Not sure why that's necessary here? Martin, in r152368 you reduced those > to once-per-caller but obviously if each function calls each other function > as in this testcase this is still O(n^2). Why's the summary not simply > recomputed when we process the caller next? Thus at most N times? This is because summary needs to be ready for early inliner to decide whether caller is good for inlning or not. I think we can simply mark it as dirty and compute on demand from the inliner. I also have finally working patches for incremental update of inline summary in the IPA inliner. Honza