We preserve the InlineRule on loop breakers, in the hope that they'll
stop being a loop breaker later. So don't inline them!
activeInline :: SimplEnv -> OutId -> Bool
activeInline env id
+ | isNonRuleLoopBreaker (idOccInfo id) -- Things with an INLINE pragma may have
+ -- an unfolding *and* be a loop breaker
+ = False -- (maybe the knot is not yet untied)
+ | otherwise
= case getMode env of
SimplGently { sm_inline = inlining_on }
-> inlining_on && isEarlyActive act