Hi, On Sun, Jul 12, 2015 at 11:39:55PM +0200, Paolo Bonzini wrote: > From: bonz...@gnu.org > > In this PR, a lot of time is spent doing the same ipa_load_from_parm_agg > query over and over. Luckily a memoization scheme is already there, it's > just not used by ipa-inline-analysis.c. The patch moves the cache struct > (struct func_body_info) to ipa-prop.h and modify ipa-inline-analysis.c. > On some testcases from PR26854 the "alias stmt walking" timevar goes > off the profile while it used to be 30-70%. > > Bootstrapped (regtest in progress) on x86_64-pc-linux-gnu. > > Please commit the patch for me if approved, as I don't have anymore > the key I used to use for gcc.gnu.org. One of these days I'll send > my new SSH public key to the overseers.
I can't approve it, but FWIW, I'm generally fine with the patch. Although the original idea was to share one func_body_info in between ipa-cp and ipa-inline analyses, this is certainly better than what we have now and perhaps even good enough generally. The only semi-issue I have is the name of func_body_info. If it is going to be exposed in a header file, perhaps it should get an ipa_ prefix. I also think that its initialization should be put into a common function, but that is somethig I can do as a followup, if need be. In any event, thanks for working on this, Martin