X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2FsimplCore%2FSimplMonad.lhs;h=a4e7ef48c28204eb755f4c0422d787df5d60f77b;hp=be51d7d684f190bebba891ba7a59a24ec72cebef;hb=a425df1a4e65b24018db36d4f9b919fc8af3447e;hpb=4033c3e0f46673b3d1af253552583e94c663bff8 diff --git a/compiler/simplCore/SimplMonad.lhs b/compiler/simplCore/SimplMonad.lhs index be51d7d..a4e7ef4 100644 --- a/compiler/simplCore/SimplMonad.lhs +++ b/compiler/simplCore/SimplMonad.lhs @@ -32,7 +32,7 @@ import UniqSupply import DynFlags ( SimplifierSwitch(..), DynFlags, DynFlag(..), dopt ) import StaticFlags ( opt_PprStyle_Debug, opt_HistorySize ) import Maybes ( expectJust ) -import FiniteMap ( FiniteMap, emptyFM, isEmptyFM, lookupFM, addToFM, plusFM_C, fmToList ) +import FiniteMap ( FiniteMap, emptyFM, lookupFM, addToFM, plusFM_C, fmToList ) import FastString import Outputable import FastTypes @@ -205,16 +205,9 @@ isZeroSimplCount (SimplCount { ticks = 0 }) = True isZeroSimplCount _ = False doFreeTick tick sc@SimplCount { details = dts } - = dts' `seqFM` sc { details = dts' } - where - dts' = dts `addTick` tick + = sc { details = dts `addTick` tick } doFreeTick _ sc = sc --- Gross hack to persuade GHC 3.03 to do this important seq -seqFM :: FiniteMap key elt -> t -> t -seqFM fm x | isEmptyFM fm = x - | otherwise = x - doTick tick sc@SimplCount { ticks = tks, details = dts, n_log = nl, log1 = l1 } | nl >= opt_HistorySize = sc1 { n_log = 1, log1 = [tick], log2 = l1 } | otherwise = sc1 { n_log = nl+1, log1 = tick : l1 }