• simonpj's avatar
    [project @ 1999-09-17 09:15:22 by simonpj] · 731f53de
    simonpj authored
    This bunch of commits represents work in progress on inlining and
    worker/wrapper stuff.
    
    Currently, I think it makes the compiler slightly worse than 4.04, for
    reasons I don't yet understand.  But it means that Simon and I can
    both peer at what is going on.
    
    * Substantially improve handling of coerces in worker/wrapper
    
    * exprIsDupable for an application (f e1 .. en) wasn't calling exprIsDupable
      on the arguments!!  So applications with few, but large, args were being dupliated.
    
    * sizeExpr on an application wasn't doing a nukeScrutDiscount on the arg of
      an application!!  So bogus discounts could accumulate from arguments!
    
    * Improve handling of INLINE pragmas in calcUnfoldingGuidance.  It was really
      wrong before
    731f53de
SimplMonad.lhs 28 KB