cmm/Hoopl.hs

    {-# LANGUAGE RankNTypes, ScopedTypeVariables #-}
    {-# OPTIONS_GHC -fno-warn-orphans #-}

    module Hoopl (
        module Compiler.Hoopl,
        module Hoopl.Dataflow,
      ) where

    import Compiler.Hoopl hiding
      ( (<*>), mkLabel, mkBranch, mkMiddle, mkLast, -- clashes with our MkGraph
        DataflowLattice, OldFact, NewFact, JoinFun,
        fact_bot, fact_join, joinOutFacts, mkFactBase,
        Unique,
        FwdTransfer(..), FwdRewrite(..), FwdPass(..),
        BwdTransfer(..), BwdRewrite(..), BwdPass(..),
        mkFactBase, Fact,
        mkBRewrite3, mkBTransfer3,
        mkFRewrite3, mkFTransfer3,

      )

    import Hoopl.Dataflow
    import Outputable

    instance Outputable LabelSet where
      ppr = ppr . setElems

    instance Outputable a => Outputable (LabelMap a) where
      ppr = ppr . mapToList