X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=sidebyside;f=compiler%2Fcmm%2FMkZipCfg.hs;h=067e74956c8e08750f451dd51ea3323583014192;hb=30c122df62ec75f9ed7f392f24c2925675bf1d06;hp=d098bb620fe38684d6cd19ba8e4ac0ffef2cce2c;hpb=cd437edc8792e5dbcfaa6a6b9948364e9d9d08f3;p=ghc-hetmet.git diff --git a/compiler/cmm/MkZipCfg.hs b/compiler/cmm/MkZipCfg.hs index d098bb6..067e749 100644 --- a/compiler/cmm/MkZipCfg.hs +++ b/compiler/cmm/MkZipCfg.hs @@ -1,6 +1,6 @@ {-# LANGUAGE ScopedTypeVariables #-} module MkZipCfg - ( AGraph, (<*>), sequence + ( AGraph, (<*>), catAGraphs , emptyAGraph, withFreshLabel, withUnique , mkMiddle, mkMiddles, mkLast, mkZTail, mkBranch, mkLabel, mkIfThenElse, mkWhileDo , outOfLine @@ -15,8 +15,9 @@ import Outputable import Unique import UniqFM import UniqSupply +import Util -import Prelude hiding (zip, unzip, last, sequence) +import Prelude hiding (zip, unzip, last) #include "HsVersions.h" @@ -154,7 +155,7 @@ representation is agnostic on this point.) infixr 3 <*> (<*>) :: AGraph m l -> AGraph m l -> AGraph m l -sequence :: [AGraph m l] -> AGraph m l +catAGraphs :: [AGraph m l] -> AGraph m l -- | A graph is built up by splicing together graphs each containing a -- single node (where a label is considered a 'first' node. The empty @@ -250,7 +251,7 @@ newtype AGraph m l = AGraph (Graph m l -> UniqSM (Graph m l)) AGraph f1 <*> AGraph f2 = AGraph f where f g = f2 g >>= f1 -- note right associativity -sequence = foldr (<*>) emptyAGraph +catAGraphs = foldr (<*>) emptyAGraph emptyAGraph = AGraph return @@ -359,5 +360,3 @@ Emitting a Branch at this point is fine: freshBlockId :: String -> UniqSM BlockId freshBlockId _ = do { u <- getUniqueUs; return $ BlockId u } -_unused :: FS.FastString -_unused = undefined