https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79224
--- Comment #12 from Jan Hubicka <hubicka at gcc dot gnu.org> --- I know - it is the problem I mentioned earlier. ray_sphere has a conditional on parameter SP that decides whether it does extra work. In some cases ray_sphere is called with SP NULL. Now we compute the speedup by comparing the offline copy of ray_sphere (where we know nothing on SP value) to specialized inline version (where we know that SP is NULL). This makes us to account quite large speedup and prioritize the inline. This is wrong (and has been for a while) and I have patch to fix it next stage1, but it is not really stage 4 material :( Honza