[project @ 2001-01-11 07:04:16 by qrczak]
[ghc-hetmet.git] / ghc / lib / std / CPUTime.lhs
index a99e6b7..a695214 100644 (file)
@@ -1,7 +1,9 @@
+% -----------------------------------------------------------------------------
+% $Id: CPUTime.lhs,v 1.26 2001/01/11 07:04:16 qrczak 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" #-}
@@ -23,8 +25,9 @@ import PrelBase               ( Int(..) )
 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}
 
@@ -50,23 +53,24 @@ getCPUTime = do
                 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")
+                        "can't get CPU time"
+                        Nothing)
 
 cpuTimePrecision :: Integer
 cpuTimePrecision = round ((1000000000000::Integer) % 
                           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
                )