[Bug ipa/62016] [4.8/4.9/5 Regression] very slow compilation at -O3 on x86_64-linux-gnu

hubicka at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Dec 19 21:19:00 GMT 2014


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62016

--- Comment #8 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Hmm, backporting the code to turn unreachable calls to __builtin_unreachable to
4.7 is quite risky - nothin in 4.7 really cared about correctness of the
analysis. While I do recall only one recent bug in that area, I think it is
safer to leave it as it is.

With sreal changes I guess 5.0 can update costs incrementally. The expensive
part here is not really the evaulation of predicates. Just the fact that we
create function with incredibly many unreachable calls (that accounts as 0) and
we keep re-counting them each time we inline next call.

If we just keep incrementally updating the overall size/speed of the large
function, this problem will go away (and there is earlier Steven's inline bomb
exposing same behaviour)



More information about the Gcc-bugs mailing list