| ghc-6.10.4: The GHC API | Contents | Index
CmmSpillReload
Synopsis
data ExtendWithSpills m
= NotSpillOrReload m
| Spill RegSet
| Reload RegSet
data DualLive = DualLive {
on_stack :: RegSet
in_regs :: RegSet
}
dualLiveLattice :: DataflowLattice DualLive
dualLiveTransfers :: BlockSet -> BackwardTransfers M Last DualLive
dualLiveness :: BlockSet -> Graph M Last -> FuelMonad (BlockEnv DualLive)
dualLivenessWithInsertion :: BlockSet -> Graph M Last -> FuelMonad (Graph M Last)
elimSpillAndReload :: StackSlotMap -> LGraph M l -> (StackSlotMap, LGraph Middle l)
availRegsLattice :: DataflowLattice AvailRegs
cmmAvailableReloads :: Graph M Last -> FuelMonad CmmAvail
insertLateReloads :: Graph M Last -> FuelMonad (Graph M Last)
insertLateReloads' :: Graph M Last -> FuelMonad (Graph M Last)
removeDeadAssignmentsAndReloads :: BlockSet -> Graph M Last -> FuelMonad (Graph M Last)
Documentation
data ExtendWithSpills m
Constructors
NotSpillOrReload m |
Spill RegSet |
Reload RegSet |
Instances
Outputable m => Outputable (ExtendWithSpills m)
UserOfLocalRegs m => UserOfLocalRegs (ExtendWithSpills m)
Outputable m => DebugNodes (ExtendWithSpills m) Last
data DualLive
Constructors
DualLive |
on_stack :: RegSet |
in_regs :: RegSet |
Instances
Outputable DualLive
dualLiveLattice :: DataflowLattice DualLive
dualLiveTransfers :: BlockSet -> BackwardTransfers M Last DualLive
dualLiveness :: BlockSet -> Graph M Last -> FuelMonad (BlockEnv DualLive)
dualLivenessWithInsertion :: BlockSet -> Graph M Last -> FuelMonad (Graph M Last)
elimSpillAndReload :: StackSlotMap -> LGraph M l -> (StackSlotMap, LGraph Middle l)
For conversion back to vanilla C--
availRegsLattice :: DataflowLattice AvailRegs
cmmAvailableReloads :: Graph M Last -> FuelMonad CmmAvail
insertLateReloads :: Graph M Last -> FuelMonad (Graph M Last)
insertLateReloads' :: Graph M Last -> FuelMonad (Graph M Last)
removeDeadAssignmentsAndReloads :: BlockSet -> Graph M Last -> FuelMonad (Graph M Last)
Produced by Haddock version 2.4.2