#include "HsVersions.h"
+import BlockId ( BlockId, BlockEnv, emptyBlockEnv, lookupBlockEnv, extendBlockEnv
+ , BlockSet, emptyBlockSet, elemBlockSet, extendBlockSet)
import CmmExpr ( UserOfLocalRegs(..) ) --for an instance
-import StackSlot
import Outputable hiding (empty)
import Panic
lastTail (ZLast l) = l
lastTail (ZTail _ t) = lastTail t
-tailOfLast l = ZLast (LastOther l) -- ^ tedious to write in every client
+tailOfLast l = ZLast (LastOther l) -- tedious to write in every client
------------------ simple graph manipulations
-- more mathematically elegant (but results in more complicated code).
--
-- Here's an easy way to go wrong! Consider
+-- @
-- A -> [B,C]
-- B -> D
-- C -> D
+-- @
-- Then ordinary dfs would give [A,B,D,C] which has a back ref from C to D.
-- Better to geot [A,B,C,D]