module UHC.Light.Compiler.ConfigInternalVersions
( InternalVersionCombined
, internalVersionCombined
, internalVersionTySys, internalVersionCodeGen, internalVersionHI, internalVersionCore, internalVersionCoreRun )
where
import Data.Word
import Data.Bits
type InternalVersion = Word64
type InternalVersionCombined = Word64
mkInternalVersion :: Int -> InternalVersion
mkInternalVersion = fromIntegral
internalVersionCombined :: InternalVersionCombined
internalVersionCombined =
internalVersionHI
.|. (internalVersionCore `shiftL` 6)
.|. (internalVersionCoreRun `shiftL` 12)
.|. (internalVersionTySys `shiftL` 18)
.|. (internalVersionCodeGen `shiftL` 24)
.|. (internalVersionEH `shiftL` 30)
internalVersionTySys = mkInternalVersion 1
internalVersionCodeGen = mkInternalVersion 1
internalVersionHI = mkInternalVersion 1
internalVersionCore = mkInternalVersion 1
internalVersionCoreRun = mkInternalVersion 1
internalVersionEH = mkInternalVersion 1