+% -----------------------------------------------------------------------------
+% $Id: CPUTime.lhs,v 1.25 2000/09/14 13:46:42 simonpj Exp $
%
-% (c) The GRASP/AQUA Project, Glasgow University, 1995-1997
+% (c) The University of Glasgow, 1995-2000
%
-\section[CPUTime]{Haskell 1.4 CPU Time Library}
+\section[CPUTime]{Haskell 98 CPU Time Library}
\begin{code}
{-# OPTIONS -#include "cbits/stgio.h" #-}
import PrelByteArr ( ByteArray(..), newIntArray )
import PrelArrExtra ( unsafeFreezeByteArray )
import PrelNum ( fromInt )
-import PrelIOBase ( IOError(..), IOErrorType( UnsupportedOperation ),
- unsafePerformIO, stToIO )
+import PrelIOBase ( IOError, IOException(..),
+ IOErrorType( UnsupportedOperation ),
+ unsafePerformIO, stToIO, ioException )
import Ratio
\end{code}
fromIntegral (I# (indexIntArray# frozen# 2#)) * 1000000000 +
fromIntegral (I# (indexIntArray# frozen# 3#))) * 1000)
else
- ioError (IOError Nothing UnsupportedOperation
+ ioException (IOError Nothing UnsupportedOperation
"getCPUTime"
"can't get CPU time")
fromInt (unsafePerformIO clockTicks))
foreign import "libHS_cbits" "getCPUTime" unsafe primGetCPUTime :: ByteArray Int -> IO Int
-foreign import "libHS_cbits" "clockTicks" clockTicks :: IO Int
+foreign import "libHS_cbits" "clockTicks" unsafe clockTicks :: IO Int
\end{code}
#else
\begin{code}
-import PrimPrel ( nh_getCPUtime
+import PrelPrim ( nh_getCPUtime
, nh_getCPUprec
, unsafePerformIO
)