[Bug tree-optimization/40436] [4.5 regression] 0.5% code size regression caused by r147852

hubicka at ucw dot cz gcc-bugzilla@gcc.gnu.org
Sat Apr 3 21:39:00 GMT 2010



------- Comment #27 from hubicka at ucw dot cz  2010-04-03 21:39 -------
Subject: Re:  [4.5 regression] 0.5% code size
        regression caused by r147852

And after checking the code, I think it is correct. I.e. limit is computed on
size before inlining of caller or callee (this is to allow large callees to be
inlined into tiny wrappers).

So overall limit for size after inlininig is  max(LARGE_FUNCTION_INSNS,
orig_size + orig_size * LARGE_FUNCTION_GROWTH) that seems sane to me.

Thinking more about the double accounting bug, it probably should not affect
the -Os compilation too much since we should not be inlining anything large at
first place.  Still will make a fix at monday and probably try to push it at
least to 4.5.1 or so.  It definitly allows to construct units where we let a
lot more growth than we are supposed so.

Honza


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40436



More information about the Gcc-bugs mailing list