ghc-7.7.20130829: The GHC API

Safe HaskellNone

CmmLive

Synopsis

Documentation

cmmLocalLiveness :: DynFlags -> CmmGraph -> BlockEntryLiveness LocalRegSource

Calculated liveness info for a CmmGraph

liveLattice :: Ord r => DataflowLattice (CmmLive r)Source

The dataflow lattice

noLiveOnEntry :: BlockId -> CmmLive LocalReg -> a -> aSource

On entry to the procedure, there had better not be any LocalReg's live-in.

xferLive :: forall r. (UserOfRegs r (CmmNode O O), DefinerOfRegs r (CmmNode O O), UserOfRegs r (CmmNode O C), DefinerOfRegs r (CmmNode O C)) => DynFlags -> BwdTransfer CmmNode (CmmLive r)Source

The transfer function

gen :: UserOfRegs r a => DynFlags -> a -> RegSet r -> RegSet rSource

The transfer equations use the traditional gen and kill notations, which should be familiar from the Dragon Book.

kill :: DefinerOfRegs r a => DynFlags -> a -> RegSet r -> RegSet rSource

gen_kill :: (DefinerOfRegs r a, UserOfRegs r a) => DynFlags -> a -> CmmLive r -> CmmLive rSource