Improve TidyPgm.hasCafRefs to account for Integer literals (Trac #8525)
authorSimon Peyton Jones <simonpj@microsoft.com>
Tue, 16 Dec 2014 17:53:00 +0000 (17:53 +0000)
committerSimon Peyton Jones <simonpj@microsoft.com>
Wed, 17 Dec 2014 14:45:47 +0000 (14:45 +0000)
commit6b11bab6961a1518a15eaa3d3b4ce40702724ca5
tree3a1602c0b451b9fd77ce6f4075d23f9372fa9b17
parent67a0cab6b501e2d6280b51655af66ad448b3deef
Improve TidyPgm.hasCafRefs to account for Integer literals (Trac #8525)

See Note [Disgusting computation of CafRefs] in TidyPgm.

Also affects CoreUtils.rhsIsStatic.

The real solution here is to compute CAF and arity information
from the STG-program, and feed it back to tidied program for
the interface file and later GHCi clients.  A battle for another
day.

But at least this commit reduces the number of gratuitous CAFs, and
hence SRT entries.  And kills off a batch of ASSERT failures.
compiler/coreSyn/CorePrep.hs
compiler/coreSyn/CoreUtils.hs
compiler/main/TidyPgm.hs
testsuite/tests/lib/integer/all.T