X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fcmm%2FCmmLiveZ.hs;h=9b2fa56d5b34ed04142026666105bbe9de0215a2;hp=2b502d500c910aa8cade06baa9b7d64971d8f9f3;hb=e64dbac62758a2c95d0d8faea37b22287d585479;hpb=855444fb5b955353a59e7062a3563f6a9324e676 diff --git a/compiler/cmm/CmmLiveZ.hs b/compiler/cmm/CmmLiveZ.hs index 2b502d5..9b2fa56 100644 --- a/compiler/cmm/CmmLiveZ.hs +++ b/compiler/cmm/CmmLiveZ.hs @@ -11,13 +11,14 @@ import Cmm import CmmExpr import CmmTx import DFMonad -import Maybes import PprCmm() import PprCmmZ() -import UniqSet import ZipDataflow import ZipCfgCmmRep +import Maybes +import UniqSet + ----------------------------------------------------------------------------- -- Calculating what variables are live on entry to a basic block ----------------------------------------------------------------------------- @@ -40,10 +41,8 @@ type BlockEntryLiveness = BlockEnv CmmLive ----------------------------------------------------------------------------- cmmLivenessZ :: CmmGraph -> BlockEntryLiveness cmmLivenessZ g = env - where env = runDFA liveLattice $ - do run_b_anal transfer g - allFacts - transfer = BComp "liveness analysis" exit last middle first + where env = runDFA liveLattice $ do { run_b_anal transfer g; allFacts } + transfer = BComp "liveness analysis" exit last middle first exit = emptyUniqSet first live _ = live middle = flip middleLiveness @@ -63,7 +62,7 @@ middleLiveness m = middle m middle (MidStore addr rval) = gen addr . gen rval middle (MidUnsafeCall tgt ress args) = gen tgt . gen args . kill ress middle (CopyIn _ formals _) = kill formals - middle (CopyOut _ formals) = gen formals + middle (CopyOut _ actuals) = gen actuals lastLiveness :: Last -> (BlockId -> CmmLive) -> CmmLive lastLiveness l env = last l