import Data.List (nub, minimumBy)
import Data.Maybe
-import Control.Monad
type SpillCostRecord
= ( VirtualReg -- register name
-- lookup the regs that are live on entry to this block in
-- the info table from the CmmProc
countBlock info (BasicBlock blockId instrs)
- | LiveInfo _ _ blockLive <- info
+ | LiveInfo _ _ (Just blockLive) <- info
, Just rsLiveEntry <- lookupBlockEnv blockLive blockId
, rsLiveEntry_virt <- mapUniqSet (\(RegVirtual vr) -> vr)