[project @ 2002-11-19 14:16:43 by simonmar]
authorsimonmar <unknown>
Tue, 19 Nov 2002 14:16:45 +0000 (14:16 +0000)
committersimonmar <unknown>
Tue, 19 Nov 2002 14:16:45 +0000 (14:16 +0000)
commitde7a4a0374be602c9f3294ec03f556d2b395e975
tree625ed2883954850c67600fab4e8a10687c994ebe
parent459c7e36729f593aa09e813a47a61a8ea0c81d4f
[project @ 2002-11-19 14:16:43 by simonmar]
- Fix a bug in eta-expansion of an application; it probably never bit
  us in practice.

- Change the behaviour of State#-lambdas: previously a State# lambda
  was considered to be one-shot for the purposes of inlining and
  eta-expansion.  Both can lead to unbounded extra work, but inlining
  is more likely to kill us, and eta-expansion is the case we mostly
  care about (getting the State# lambda to the outside of the function
  is often very important).  So now we only consider a State# lambda to be
  one-shot in eta expansion, not for inlining.
ghc/compiler/basicTypes/Id.lhs
ghc/compiler/coreSyn/CoreUtils.lhs