{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE NoImplicitPrelude #-}

module GHC.Profiling.Eras ( setUserEra
                     , getUserEra
                     , incrementUserEra
                     ) where

import GHC.Internal.Base

-- | Set the heap profiling era, setting the era to 0 will stop closures being
-- counted.
foreign import ccall setUserEra :: Word -> IO ()

-- | Query the profiling era
foreign import ccall getUserEra :: IO Word

-- | Increment the era by a given amount, and return the new era.
foreign import ccall incrementUserEra :: Word -> IO Word