http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59660
--- Comment #2 from Jan Hubicka <hubicka at ucw dot cz> --- > I have noticed these, too (-Og is pessimzed by them). The pattern is > generated > by gimplifying. I wondered why we can't simply update gimplifier to not produce them? (this is what I wanted to look into today, it seems pretty common pattern confusing inliner). For sure we should better also handle it either in cfg-cleanup or copyprop for cases that arrise as a result of other optimizations, but it seems it would speed things up if we did not wrap each predicate calls in its own three BBs.