[project @ 2000-05-10 11:02:00 by simonmar]
authorsimonmar <unknown>
Wed, 10 May 2000 11:02:01 +0000 (11:02 +0000)
committersimonmar <unknown>
Wed, 10 May 2000 11:02:01 +0000 (11:02 +0000)
rename takeMaybeMVar to tryTakeMVar

ghc/compiler/prelude/PrimOp.lhs
ghc/includes/PrimOps.h
ghc/lib/std/PrelConc.lhs
ghc/lib/std/PrelGHC.hi-boot
ghc/rts/PrimOps.hc

index 393dc85..7a0627d 100644 (file)
@@ -176,7 +176,7 @@ data PrimOp
     | TakeMVarOp 
     | PutMVarOp
     | SameMVarOp
-    | TakeMaybeMVarOp 
+    | TryTakeMVarOp 
     | IsEmptyMVarOp
 
     -- exceptions
@@ -460,7 +460,7 @@ tagOf_PrimOp NewMVarOp                            = ILIT(217)
 tagOf_PrimOp TakeMVarOp                              = ILIT(218)
 tagOf_PrimOp PutMVarOp                       = ILIT(219)
 tagOf_PrimOp SameMVarOp                              = ILIT(220)
-tagOf_PrimOp TakeMaybeMVarOp                 = ILIT(221)
+tagOf_PrimOp TryTakeMVarOp                   = ILIT(221)
 tagOf_PrimOp IsEmptyMVarOp                   = ILIT(222)
 tagOf_PrimOp MkForeignObjOp                  = ILIT(223)
 tagOf_PrimOp WriteForeignObjOp               = ILIT(224)
@@ -751,7 +751,7 @@ allThePrimOps               -- Except CCall, which is really a family of primops
        TakeMVarOp,
        PutMVarOp,
        SameMVarOp,
-       TakeMaybeMVarOp,
+       TryTakeMVarOp,
        IsEmptyMVarOp,
        MkForeignObjOp,
        WriteForeignObjOp,
@@ -1523,12 +1523,12 @@ primOpInfo SameMVarOp
     in
     mkGenPrimOp SLIT("sameMVar#") [s_tv, elt_tv] [mvar_ty, mvar_ty] boolTy
 
-primOpInfo TakeMaybeMVarOp
+primOpInfo TryTakeMVarOp
   = let
        elt = alphaTy; elt_tv = alphaTyVar; s = betaTy; s_tv = betaTyVar
        state = mkStatePrimTy s
     in
-    mkGenPrimOp SLIT("takeMaybeMVar#") [s_tv, elt_tv]
+    mkGenPrimOp SLIT("tryTakeMVar#") [s_tv, elt_tv]
        [mkMVarPrimTy s elt, state]
        (unboxedTriple [state, intPrimTy, elt])
 
@@ -1914,7 +1914,7 @@ perform a heap check or they block.
 primOpOutOfLine op
   = case op of
        TakeMVarOp                   -> True
-       TakeMaybeMVarOp              -> True
+       TryTakeMVarOp                -> True
        PutMVarOp                    -> True
        DelayOp                      -> True
        WaitReadOp                   -> True
@@ -2079,7 +2079,7 @@ primOpHasSideEffects UnsafeFreezeByteArrayOp      = True
 primOpHasSideEffects UnsafeThawArrayOp         = True
 
 primOpHasSideEffects TakeMVarOp        = True
-primOpHasSideEffects TakeMaybeMVarOp   = True
+primOpHasSideEffects TryTakeMVarOp     = True
 primOpHasSideEffects PutMVarOp         = True
 primOpHasSideEffects DelayOp           = True
 primOpHasSideEffects WaitReadOp        = True
@@ -2244,7 +2244,7 @@ primOpUsg op
       TakeMVarOp           -> mangle [mkM, mkP          ] mkM
       PutMVarOp            -> mangle [mkM, mkM, mkP     ] mkR
       SameMVarOp           -> mangle [mkP, mkP          ] mkM
-      TakeMaybeMVarOp      -> mangle [mkM, mkP          ] mkM
+      TryTakeMVarOp        -> mangle [mkM, mkP          ] mkM
       IsEmptyMVarOp        -> mangle [mkP, mkP          ] mkM
 
       ForkOp               -> mangle [mkO, mkP          ] mkR
index c2457ab..2edd62b 100644 (file)
@@ -1,5 +1,5 @@
 /* -----------------------------------------------------------------------------
- * $Id: PrimOps.h,v 1.52 2000/04/13 15:37:11 panne Exp $
+ * $Id: PrimOps.h,v 1.53 2000/05/10 11:02:00 simonmar Exp $
  *
  * (c) The GHC Team, 1998-1999
  *
@@ -662,7 +662,7 @@ EF_(newMutVarzh_fast);
 #define isEmptyMVarzh(r,a)       r=(I_)((GET_INFO((StgMVar*)(a))) == &EMPTY_MVAR_info )
 EF_(newMVarzh_fast);
 EF_(takeMVarzh_fast);
-EF_(takeMaybeMVarzh_fast);
+EF_(tryTakeMVarzh_fast);
 EF_(putMVarzh_fast);
 
 
index bef86b6..74a1d7a 100644 (file)
@@ -33,7 +33,7 @@ module PrelConc
        , putMVar       -- :: MVar a -> a -> IO ()
        , readMVar      -- :: MVar a -> IO a
        , swapMVar      -- :: MVar a -> a -> IO a
-       , takeMaybeMVar -- :: MVar a -> IO (Maybe a)
+       , tryTakeMVar   -- :: MVar a -> IO (Maybe a)
        , isEmptyMVar   -- :: MVar a -> IO Bool
 
     ) where
@@ -147,10 +147,10 @@ swapMVar mvar new =
     putMVar mvar new   >>
     return old
 
--- takeMaybeMVar is a non-blocking takeMVar
-takeMaybeMVar :: MVar a -> IO (Maybe a)
-takeMaybeMVar (MVar m) = IO $ \ s ->
-    case takeMaybeMVar# m s of
+-- tryTakeMVar is a non-blocking takeMVar
+tryTakeMVar :: MVar a -> IO (Maybe a)
+tryTakeMVar (MVar m) = IO $ \ s ->
+    case tryTakeMVar# m s of
        (# s, 0#, _ #) -> (# s, Nothing #)      -- MVar is empty
        (# s, _,  a #) -> (# s, Just a  #)      -- MVar is full
 
@@ -161,7 +161,7 @@ takeMaybeMVar (MVar m) = IO $ \ s ->
  the MVar may have been filled (or emptied) - so be extremely
  careful when using this operation.  
 
- Use takeMaybeMVar instead if possible.
+ Use tryTakeMVar instead if possible.
 
  If you can re-work your abstractions to avoid having to
  depend on isEmptyMVar, then you're encouraged to do so,
index 58432a6..bc7dac3 100644 (file)
@@ -45,7 +45,7 @@ __export PrelGHC
   newMVarzh
   takeMVarzh
   putMVarzh
-  takeMaybeMVarzh
+  tryTakeMVarzh
   isEmptyMVarzh
   
   -- Parallel
index 1c548f4..e288b32 100644 (file)
@@ -1,5 +1,5 @@
 /* -----------------------------------------------------------------------------
- * $Id: PrimOps.hc,v 1.51 2000/04/12 17:11:38 simonmar Exp $
+ * $Id: PrimOps.hc,v 1.52 2000/05/10 11:02:00 simonmar Exp $
  *
  * (c) The GHC Team, 1998-2000
  *
@@ -888,7 +888,7 @@ FN_(takeMVarzh_fast)
   FE_
 }
 
-FN_(takeMaybeMVarzh_fast)
+FN_(tryTakeMVarzh_fast)
 {
   StgMVar *mvar;
   StgClosure *val;