projects
/
ghc-hetmet.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
15ecf71
)
[project @ 1997-03-14 05:19:02 by sof]
author
sof
<unknown>
Fri, 14 Mar 1997 05:19:03 +0000
(
05:19
+0000)
committer
sof
<unknown>
Fri, 14 Mar 1997 05:19:03 +0000
(
05:19
+0000)
Import changes
ghc/lib/concurrent/Merge.lhs
patch
|
blob
|
history
ghc/lib/concurrent/Parallel.lhs
patch
|
blob
|
history
diff --git
a/ghc/lib/concurrent/Merge.lhs
b/ghc/lib/concurrent/Merge.lhs
index
322d2aa
..
f95678e
100644
(file)
--- a/
ghc/lib/concurrent/Merge.lhs
+++ b/
ghc/lib/concurrent/Merge.lhs
@@
-15,7
+15,9
@@
module Merge
) where
import Semaphore
) where
import Semaphore
-
+import ConcBase
+import STBase ( unsafeInterleavePrimIO )
+import IOBase
max_buff_size = 1
max_buff_size = 1
@@
-64,7
+66,7
@@
suckIO branches_running buff@(tail_list,e) vs
unsafeInterleavePrimIO ( ioToPrimIO $
takeMVar next_node >>= \ x ->
signalQSem e >>
unsafeInterleavePrimIO ( ioToPrimIO $
takeMVar next_node >>= \ x ->
signalQSem e >>
- return x) `stThen` \ next_node_val ->
+ return x) `thenIO_Prim` \ next_node_val ->
putMVar node (x:next_node_val) >>
putMVar tail_list next_node >>
suckIO branches_running buff xs
putMVar node (x:next_node_val) >>
putMVar tail_list next_node >>
suckIO branches_running buff xs
diff --git
a/ghc/lib/concurrent/Parallel.lhs
b/ghc/lib/concurrent/Parallel.lhs
index
79609ad
..
2c068e6
100644
(file)
--- a/
ghc/lib/concurrent/Parallel.lhs
+++ b/
ghc/lib/concurrent/Parallel.lhs
@@
-13,6
+13,9
@@
module Parallel (par, seq -- re-exported
import ConcBase ( par )
#if defined(__GRANSIM__)
import ConcBase ( par )
#if defined(__GRANSIM__)
+import PrelBase
+import GHCerr ( parError )
+import GHC ( parGlobal#, parLocal#, parAt#, parAtForNow# )
{-# INLINE parGlobal #-}
parGlobal :: Int -> Int -> Int -> Int -> a -> b -> b
{-# INLINE parGlobal #-}
parGlobal :: Int -> Int -> Int -> Int -> a -> b -> b