Two small improvements to LiberateCase
Max Bolingbroke suggested these two small improvements to LiberateCase
(most of the size increase is comments :-)):
a) Do LiberateCase on small functions even if they are mutually recursive
See Note [Small enough]
b) Don't do LiberateCase on functions for which it'd be fruitless,
namely when a free varible is scrutinised *outside* the function
See Note [Avoiding fruitless liberate-case]
There is virtually no effect on nofib, but Max tripped over cases
where it mattered slightly.