{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE MagicHash #-}
module GHC.Internal.Integer.Logarithms
( wordLog2#
, integerLog2#
, integerLogBase#
)
where
import qualified GHC.Num.Primitives as N
import qualified GHC.Num.Integer as N
import GHC.Num.Integer (Integer)
import GHC.Prim
wordLog2# :: Word# -> Int#
wordLog2# :: Word# -> Int#
wordLog2# Word#
i = Word# -> Int#
word2Int# (Word# -> Word#
N.wordLog2# Word#
i)
integerLog2# :: Integer -> Int#
integerLog2# :: Integer -> Int#
integerLog2# Integer
i = Word# -> Int#
word2Int# (Integer -> Word#
N.integerLog2# Integer
i)
integerLogBase# :: Integer -> Integer -> Int#
integerLogBase# :: Integer -> Integer -> Int#
integerLogBase# Integer
x Integer
y = Word# -> Int#
word2Int# (Integer -> Integer -> Word#
N.integerLogBase# Integer
x Integer
y)