https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79506
--- Comment #2 from Jan Hubicka <hubicka at gcc dot gnu.org> --- badness being a very small negative number is actually normal for large functions like this one (perhaps I should print it better though). I can check from where the estimated speedup comes - perhaps we work out some loop invariants and thus anticipate invariant motion?