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
data BuiltinInfo
= BuiltinInfo
{ biIsSigned :: Bool
}
emptyBuiltinInfo :: BuiltinInfo
emptyBuiltinInfo
= BuiltinInfo
{ biIsSigned = False
}
type BuiltinInfoMp = Map.Map HsName BuiltinInfo
builtinRecNm :: Int -> HsName
builtinRecNm = hsnProd
builtinKnownRecTyNmL :: [HsName]
builtinKnownRecTyNmL
= map builtinRecNm (0:[2..10])
builtinNm :: EHCOpts -> (EHBuiltinNames -> HsName) -> HsName
builtinNm = ehcOptBuiltin