uhc-light-1.1.7.0: src/UHC/Light/Compiler/CodeGen/BuiltinSizeInfo.hs
module UHC.Light.Compiler.CodeGen.BuiltinSizeInfo
( BuiltinInfo (..)
, BuiltinInfoMp
, builtinRecNm
, builtinKnownRecTyNmL )
where
import UHC.Light.Compiler.Base.HsName
import UHC.Light.Compiler.Base.HsName.Builtin
import UHC.Light.Compiler.Opts
import qualified UHC.Light.Compiler.Config as Cfg
import UHC.Light.Compiler.CodeGen.BasicAnnot
import qualified Data.Map as Map
{-# LINE 37 "src/ehc/CodeGen/BuiltinSizeInfo.chs" #-}
data BuiltinInfo
= BuiltinInfo
{ biIsSigned :: Bool
}
emptyBuiltinInfo :: BuiltinInfo
emptyBuiltinInfo
= BuiltinInfo
{ biIsSigned = False
}
{-# LINE 65 "src/ehc/CodeGen/BuiltinSizeInfo.chs" #-}
type BuiltinInfoMp = Map.Map HsName BuiltinInfo
{-# LINE 346 "src/ehc/CodeGen/BuiltinSizeInfo.chs" #-}
builtinRecNm :: Int -> HsName
builtinRecNm = hsnProd
{-# LINE 351 "src/ehc/CodeGen/BuiltinSizeInfo.chs" #-}
builtinKnownRecTyNmL :: [HsName]
builtinKnownRecTyNmL
= map builtinRecNm (0:[2..10])
{-# LINE 361 "src/ehc/CodeGen/BuiltinSizeInfo.chs" #-}
builtinNm :: EHCOpts -> (EHBuiltinNames -> HsName) -> HsName
builtinNm = ehcOptBuiltin